Содержание
- Настройка Debian
- Шаг 1: Обновление системы
- Шаг 2: Установка SUDO
- Шаг: 3: Настройка репозиториев
- Шаг 4: Добавление Backports
- Шаг 5: Установка шрифтов
- Шаг 6: Настройка сглаживания шрифтов
- Шаг 7: Отключение звука системного динамика
- Шаг 8: Установка кодеков
- Шаг 9: Установка Flash Player
- Шаг 10: Установка Java
- Шаг 11: Установка приложений
- Шаг 12: Установка драйверов на видеокарту
- Шаг 13: Настройка автоматического включения NumLock
- Заключение
- Вопросы и ответы
Debian не может похвастаться своей работоспособностью сразу же после установки. Это та операционная система, которую необходимо сначала настроить, и в этой статье будет рассказано, как это сделать.
Читайте также: Популярные дистрибутивы Linux
Из-за множества вариантов установки Debian (сетевая, базовая, с DVD-носителей) универсальное руководство составить не получится, поэтому некоторые этапы инструкции будут относиться к определенным версиям операционной системы.
Шаг 1: Обновление системы
Первое, что необходимо сделать после установки системы, это обновить ее. Но это более актуально для пользователей, которые устанавливали Debian с DVD-носителей. Если вы использовали сетевой метод, то все свежие обновления уже будут установлены в ОС.
- Откройте «Терминал», прописав его название в меню системы и нажав по соответствующему значку.
- Получите права суперпользователя, выполнив команду:
su
и введя пароль, указанный при установке системы.
Примечание: при вводе пароля он никак не отображается.
- Поочередно выполните две команды:
apt-get update
apt-get upgrade - Перезагрузите компьютер, чтобы закончить обновление системы. Для этого можно в «Терминале» выполнить следующую команду:
reboot
После того как компьютер снова запустится, система будет уже обновлена, поэтому можно переходить к следующему этапу настройки.
Читайте также: Обновляем Debian 8 до 9 версии
Шаг 2: Установка SUDO
sudo — утилита, созданная с целью наделения отдельных пользователей правами администратора. Как можно было заметить, при обновлении системы необходимо было входить в профиль root, что требует лишних временных затрат. Если использовать sudo, это действие можно пропустить.
Для того чтобы инсталлировать в систему утилиту sudo, необходимо, находясь в профиле root, выполнить команду:
apt-get install sudo
Утилита sudo установлена, но для ее использования нужно получить права. Проще это сделать, выполнив следующее:
adduser UserName sudo
Где вместо «UserName» надо ввести имя пользователя, которому присваиваются права.
В завершение перезагрузите систему, чтобы изменения вступили в силу.
Читайте также: Часто используемые команды в «Терминале» Linux
Шаг: 3: Настройка репозиториев
После установки Debian репозитории настроены только для получения программного обеспечения с открытым кодом, но этого недостаточно, чтобы установить в систему программы и драйвера последней версии.
Настроить репозитории для получения проприетарного ПО можно двумя способами: используя программу с графическим интерфейсом и выполняя команды в «Терминале».
Software & Updates
Чтобы провести настройку репозиториев с помощью программы с графическим интерфейсом, сделайте следующее:
- Запустите Software & Updates из меню системы.
- На вкладке «Debian Software» поставьте галочки рядом с теми пунктами, где в скобках указано «main», «contrib» и «non-free».
- Из выпадающего списка «Загрузить с» выберите сервер, который расположен ближе всего.
- Нажмите кнопку «Закрыть».
После этого программа предложит вам обновить всю имеющуюся информацию о репозиториях — нажмите кнопку «Обновить», после чего дождитесь окончания процесса и приступайте к выполнению следующего шага.
Терминал
Если по какой-то причине вы не смогли осуществить настройку с помощью программы Software & Updates, то эту же задачу можно выполнить в «Терминале». Вот что нужно делать:
- Откройте файл, в котором находится список всех репозиториев. Для этого в статье будет использоваться текстовый редактор GEdit, вы же можете ввести в соответствующем месте команды другой.
sudo gedit /etc/apt/sources.list
- В открывшемся редакторе добавьте ко всем строкам переменные «main», «contrib» и «non-free».
- Нажмите кнопку «Сохранить».
- Закройте редактор.
Читайте также: Популярные текстовые редакторы для Linux
По итогу ваш файл должен выглядеть примерно так:
Теперь, чтобы изменения вступили в силу, обновите список пакетов командой:
sudo apt-get update
Шаг 4: Добавление Backports
Продолжая тему репозиториев, рекомендуется добавить в список Backports. В нем содержатся самые свежие версии программного обеспечения. Этот пакет считается тестовым, но все ПО, которое в нем находится, стабильное. Не попало оно в официальные репозитории только по той причине, что было создано после релиза. Поэтому, если вы хотите обновить драйвера, ядро и другое ПО до последней версии, вам необходимо подключить репозиторий Backports.
Сделать это можно как с помощью Software & Updates, так и «Терминала». Рассмотрим оба способа подробнее.
Software & Updates
Для добавления репозитория Backports с помощью Software & Updates вам необходимо:
- Запустить программу.
- Перейти во вкладку «Other Software».
- Нажать кнопку «Add…».
- В строку APT ввести:
deb http://mirror.yandex.ru/debian stretch-backports main contrib non-free
(для Debian 9)или
deb http://mirror.yandex.ru/debian jessie-backports main contrib non-free
(для Debian - Нажать кнопку «Добавить источник».
После проделанных действий закройте окно программы, дав разрешение на обновление данных.
Терминал
В «Терминале» для добавления репозитория Backports необходимо внести данные в файл «sources.list». Для этого:
- Откройте нужный файл:
sudo gedit /etc/apt/sources.list
- В нем установите курсор в конце последней строки и, нажав дважды клавишу Enter, сделайте отступ, после чего впишите следующие строки:
deb http://mirror.yandex.ru/debian stretch-backports main contrib non-free
(для Debian 9)
deb-src http://mirror.yandex.ru/debian stretch-backports main contrib non-freeили
deb http://mirror.yandex.ru/debian jessie-backports main contrib non-free
(для Debian
deb-src http://mirror.yandex.ru/debian jessie-backports main contrib non-free - Нажмите кнопку «Сохранить».
- Закройте текстовый редактор.
Чтобы применить все внесенные параметры, обновите список пакетов:
sudo apt-get update
Теперь, для инсталляции в систему программного обеспечения из этого репозитория, используйте следующую команду:
sudo apt-get install -t stretch-backports [package name]
(для Debian 9)
или
sudo apt-get install -t jessie-backports [package name]
(для Debian
Где вместо «[package name]» впишите наименование пакета, который хотите установить.
Шаг 5: Установка шрифтов
Немаловажным элементом системы являются и шрифты. В Debian их предустановлено очень мало, поэтому пользователям, которые часто работают в текстовых редакторах или с изображениями в программе GIMP, обязательно нужно пополнить список уже имеющихся шрифтов. Помимо прочего, программа Wine не сможет корректно работать без них.
Для установки шрифтов, использующихся в Windows, вам нужно выполнить следующую команду:
sudo apt-get install ttf-freefont ttf-mscorefonts-installer
Добавить можно также шрифты из набора noto:
sudo apt-get install fonts-noto
Вы можете устанавливать и другие шрифты, просто ища их в интернете и перемещая в папку «.fonts», что находится в корне системы. Если этой папки у вас нет, то создайте ее самостоятельно.
Шаг 6: Настройка сглаживания шрифтов
Установив Debian, пользователь может наблюдать плохое сглаживание системных шрифтов. Эта проблема решается довольно просто — нужно создать специальный конфигурационный файл. Вот как это делается:
- В «Терминале» перейдите в директорию «/etc/fonts/». Для этого выполните:
cd /etc/fonts/
- Создайте новый файл с именем «local.conf»:
sudo gedit local.conf
- В открывшийся редактор введите следующий текст:
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<match target="font">
<edit mode="assign" name="rgba">
<const>rgb</const>
</edit>
</match>
<match target="font">
<edit mode="assign" name="hinting">
<bool>true</bool>
</edit>
</match>
<match target="font">
<edit mode="assign" name="hintstyle">
<const>hintslight</const>
</edit>
</match>
<match target="font">
<edit mode="assign" name="lcdfilter">
<const>lcddefault</const>
</edit>
</match>
<match target="font">
<edit mode="assign" name="autohint">
<bool>false</bool>
</edit>
</match>
<dir>~/.fonts</dir>
</fontconfig> - Нажмите кнопку «Сохранить» и закройте редактор.
После этого во всей системе шрифты будут иметь нормальное сглаживание.
Шаг 7: Отключение звука системного динамика
Эту настройку необходимо проводить не всем пользователям, а только тем, кто слышит характерный звук из своего системного блока. Дело в том, что в некоторых сборках этот параметр не отключен. Чтобы исправить этот недочет, вам необходимо:
- Открыть конфигурационный файл «fbdev-blacklist.conf»:
sudo gedit /etc/modprobe.d/fbdev-blacklist.conf
- В самом конце прописать следующую строку:
blacklist pcspkr
- Сохранить изменения и закрыть редактор.
Только что мы занесли модуль «pcspkr», который отвечает за звук системного динамика, в черный список, соответственно, проблема устранена.
Шаг 8: Установка кодеков
В только установленной системе Debian отсутствуют мультимедийные кодеки, это связано с их проприетарностью. Из-за этого пользователь не сможет взаимодействовать со многими форматами аудио и видео. Чтобы исправить ситуацию, необходимо их установить. Для этого:
- Выполните команду:
sudo apt-get install libavcodec-extra57 ffmpeg
В процессе установки вам необходимо будет подтвердить действие, набрав на клавиатуре символ «Д» и нажав Enter.
- Теперь нужно установить дополнительные кодеки, но они находятся в другом репозитории, поэтому его нужно предварительно добавить в систему. Для этого выполните поочередно три команды:
su
(для Debian 9)
echo "# Debian Multimedia
deb ftp://ftp.deb-multimedia.org stretch main non-free" > '/etc/apt/sources.list.d/deb-multimedia.list'или
su
(для Debian
echo "# Debian Multimedia
deb ftp://ftp.deb-multimedia.org jessie main non-free" > '/etc/apt/sources.list.d/deb-multimedia.list' - Обновите репозитории:
apt update
В выдаче можно заметить, что произошла ошибка — система не может получит доступ к GPG-ключу репозитория.
Чтобы это исправить, выполните эту команду:
apt-key adv --recv-key --keyserver pgpkeys.mit.edu 5C808C2B65558117
Примечание: в некоторых сборках Debian утилита «dirmngr» отсутствует, из-за этого команда не выполняется. Ее необходимо установить, выполнив команду «sudo apt-get install dirmngr».
- Проверьте, была ли устранена ошибка:
apt update
Видим, что ошибки нет, значит репозиторий добавлен успешно.
- Установите необходимые кодеки, выполнив команду:
apt install libfaad2 libmp4v2-2 libfaac0 alsamixergui twolame libmp3lame0 libdvdnav4 libdvdread4 libdvdcss2 w64codecs
(для 64-разрядной системы)или
apt install libfaad2 libmp4v2-2 libfaac0 alsamixergui twolame libmp3lame0 libdvdnav4 libdvdread4 libdvdcss2
(для 32-разрядной системы)
После выполнения всех пунктов вы установите все необходимые кодеки себе в систему. Но это еще не конец настройки Debian.
Шаг 9: Установка Flash Player
Те, кто знакомы с Linux, знают, что разработчики Flash Player уже давно не обновляют свой продукт на этой платформе. Поэтому, а также потому, что это приложение проприетарное, его нет во многих дистрибутивах. Но есть простой способ установить его в Debian.
Для установки Adobe Flash Player нужно выполнить:
sudo apt-get install flashplugin-nonfree
После этого он будет установлен. Но если вы собираетесь пользоваться браузером Chromium, то выполните еще одну команду:
sudo apt-get install pepperflashplugin-nonfree
Для Mozilla Firefox команда другая:
sudo apt-get install flashplayer-mozilla
Теперь все элементы сайтов, которые разработаны с использованием Flash, будут вам доступны.
Шаг 10: Установка Java
Если вы хотите, чтобы ваша система корректно отображала элементы, сделанные на языке программирования Java, необходимо инсталлировать этот пакет себе в ОС. Для этого нужно выполнить всего одну команду:
sudo apt-get install default-jre
После выполнения вы получите версию Java Runtime Environment. Но к сожалению, она не подходит для создания программ на Java. Если эта опция вам нужна, то выполните установку Java Development Kit:
sudo apt-get install default-jdk
Шаг 11: Установка приложений
Отнюдь не обязательно в десктопной версии операционной системы пользоваться только «Терминалом», когда есть возможность использовать ПО с графическим интерфейсом. Мы предлагаем вашему вниманию набор программного обеспечения, рекомендованного к установке в систему.
- evince – работает с файлами PDF;
- vlc – популярный видеоплеер;
- file-roller – архиватор;
- bleachbit – чистит систему;
- gimp – графический редактор (аналог Photoshop);
- clementine – музыкальный проигрыватель;
- qalculate – калькулятор;
- shotwell – программа для просмотра фото;
- gparted – редактор дисковых разделов;
- diodon – менеджер буфера обмена;
- libreoffice-writer – текстовый процессор;
- libreoffice-calc – табличный процессор.
Некоторые программы из этого списка уже могут быть установлены в вашей операционной системы, все зависит от сборки.
Чтобы выполнить установку какого-то одного приложения из списка, используйте команду:
sudo apt-get install ProgramName
Где вместо «ProgramName» подставьте название программы.
Чтобы установить сразу все приложения, просто перечислите их названия через пробел:
sudo apt-get install file-roller evince diodon qalculate clementine vlc gimp shotwell gparted libreoffice-writer libreoffice-calc
После выполнения команды начнется довольно продолжительная загрузка, после окончания которой, все указанное программное обеспечение будет установлено.
Шаг 12: Установка драйверов на видеокарту
Установка проприетарного драйвера видеокарты в Debian – это процесс, успешность которого, зависит от множества факторов, особенно если у вас AMD. К счастью, вместо подробного разбора всех тонкостей и выполнения множества команд в «Терминале», можно использовать специальный скрипт, который самостоятельно все скачивает и устанавливает. Именно о нем сейчас и пойдет речь.
Важно: при установке драйверов скрипт закрывает все процессы оконных менеджеров, поэтому перед выполнением инструкции сохраните все необходимые компоненты.
- Откройте «Терминал» и перейдите в директорию «bin», что находится в корневом разделе:
cd /usr/local/bin
- Загрузите с официального сайта скрипт sgfxi:
sudo wget -Nc smxi.org/sgfxi
- Дайте ему права на выполнение:
sudo chmod +x sgfxi
- Теперь нужно перейти в виртуальную консоль. Для этого нажмите сочетание клавиш Ctrl+Alt+F3.
- Введите свой логин и пароль.
- Получите права суперпользователя:
su
- Запустите скрипт, выполнив команду:
sgfxi
- На этом этапе скрипт просканирует ваше оборудование и предложит установить на него драйвер последней версии. Вы же можете отказаться и выбрать версию самостоятельно, использовав команду:
sgfxi -o [версия драйвера]
Примечание: все доступные версии для установки вы можете узнать с помощью команды «sgfxi -h».
После всех проделанных действия скрипт начнет загрузку и установку выбранного драйвера. Вам остается лишь дождаться окончания процесса.
Если по какой-то причине вы решите удалить установленный драйвер, то сделать это вы можете с помощью команды:
sgfxi -n
Возможные проблемы
Как и любое другое программное обеспечение, скрипт sgfxi имеет недостатки. При его выполнении могут случаться некоторые ошибки. Сейчас мы разберем самые популярные из них и дадим инструкцию по устранению.
- Не удалось удалить модуль Nouveau. Решить проблему довольно легко — вам необходимо перезагрузить компьютер и снова начать работу скрипта.
- Виртуальные консоли переключатся автоматически. Если в процессе установки на экране вы увидите новую виртуальную консоль, то для возобновления процесса просто вернитесь на прежнюю, нажатием клавиш Ctrl+Alt+F3.
- Скрип в самом начале работы выдает ошибку. В большинстве случаев это происходит из-за отсутствующего в системе пакета «build-essential». Скрипт при установке скачивает его автоматически, но бывают и оплошности. Для решения проблемы установите пакет самостоятельно, введя команду:
apt-get install build-essential
Это были наиболее частые проблемы при работе скрипта, если среди них вы не нашли свою, то можете ознакомиться с полной версией руководства, что находится на официальном сайте разработчика.
Шаг 13: Настройка автоматического включения NumLock
Все основные компоненты системы уже настроены, но напоследок стоит рассказать, как настроить автоматическое включение цифровой панели NumLock. Дело в том, что в дистрибутиве Debian по умолчанию этот параметр не настроен, и панель нужно включать каждый раз самостоятельно при запуске системы.
Итак, чтобы произвести настройку, вам необходимо:
- Загрузить пакет «numlockx». Для этого введите в «Терминал» эту команду:
sudo apt-get install numlockx
- Открыть конфигурационный файл «Default». Этот файл отвечает за автоматическое выполнение команд при запуске компьютера.
sudo gedit /etc/gdm3/Init/Default
- Вставить нижеуказанный текст в строку перед параметром «exit 0»:
if [ -x /usr/bin/numlockx ]; then
/usr/bin/numlockx on
fi - Сохранить изменения и закрыть текстовый редактор.
Теперь при запуске компьютера цифровая панель будет включаться автоматически.
Заключение
После выполнения всех пунктов руководства по настройке Debian вы получите дистрибутив, который отлично подходит не только для решения повседневных задач рядового пользователя, но и для работы за компьютером. Стоит уточнить, что вышеперечисленные настройки являются базовыми, и обеспечивают нормальную работу только наиболее используемых компонентов системы.
Debian — один из самых старых и популярных Linux-дистрибутивов общего применения, одинаково подходящего для создания как сервера, так и рабочей станции. Но сегодня мы поговорим именно о серверном применении, где Debian ценится, в первую очередь, за высочайшую стабильность и консервативность. В данной статье мы пошагово расскажем, как установить и настроить Debian 11 в минимальной серверной конфигурации, которую потом можно будет использовать как основу для любых серверных решений на базе этой системы.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Для установки мы будем использовать образ Netinstall, который сейчас предлагается к скачиванию по умолчанию и предполагает наличие доступа к интернет во время установки. Однако, вопреки распространенному мнению, вы можете выполнить с его помощью минимальную установку системы, даже не имея доступа к сети. Все образа Debian являются гибридными, они могут быть записаны как на оптический носитель, так и на USB-флеш накопители.
Начало установки
После того, как вы загрузились с установочного носителя, вас встречает меню, в котором вы можете выбрать варианты установщика: текстовый или графический. Мы будем использовать текстовый режим, поэтому выбираем второй пункт — Install.
Затем следует выполнить ряд настроек будущей системы, которыми не следует пренебрегать. Начнем с выбора языка установки, в соответствие с которым будут сделаны языковые и региональные настройки системы.
Укажите сочетание клавиш для переключения раскладки, по умолчанию предлагается стандартный Alt + Shift.
В дальнейшем установщик попытается настроить сеть и если в вашей сети есть работающий DHCP-сервер, то сетевые настройки будут получены автоматически, иначе вы можете ввести их руками или продолжить установку без сети, в этом случае будет доступна только минимальная установка.
Следующий важный шаг — настройка пользователей. Debian предлагает несколько вариантов: с активным пользователем root или через sudo, когда учетная запись суперпользователя отключена и административные права получает созданный при установке пользователь (как в Ubuntu). Если исходить из соображение безопасности, то второй вариант лучше, но вы можете настроить систему по собственному усмотрению.
Сделать это просто: если вы укажете пароль root, то суперпользователь будет включен, а созданная далее учетная запись получит обычные права, утилита sudo установлена не будет. Если оставить пароль root пустым, то учетная запись суперпользователя будет отключена, установлена утилита sudo и созданный на следующем шаге пользователь получит административные права.
При отсутствии сети доступен только первый вариант (с активной учетной записью root).
После настройки учетной записи суперпользователя вам будет предложено создать обычную учетную запись, никаких проблем с этим возникнуть не должно, достаточно указать желаемое имя и пароль.
Ну и наконец выполните настройки часового пояса, предлагаемый список основан на сделанных в самом начале установки языковых и региональных настройках. Ни в коем случае не следует пренебрегать данным шагом, так как современные системы крайне чувствительны к правильной настройке времени.
На этом начальный этап установки завершен.
Разметка дискового пространства
Пожалуй, разметка дисков — это самый важный этап процесса установки, с принятыми на этом этапе решениями вам потом придется жить все время существования системы, так как изменить многие из них без переустановки не удастся. Сразу начнем с того, что, если вы не знаете как именно разметить диск — размечайте его самым простым образом, в большинстве случаев отдельного раздела будет достаточно. Тоже самое касается и выбора файловой системы — ext4 успешно закрывает большинство сценариев, не следует использовать иные файловые системы если вы не имеете опыта работы с ними и не знаете зачем они вам нужны.
Автоматическая разметка
Если вы поднимаете очередной сервер для рядовых задач с единственным диском, то автоматическая разметка является неплохим вариантом. На выбор предлагаются: простая разметка, разметка с LVM и LVM с шифрованием, и, хотя LVM весьма мощный инструмент, во многих случаях он будет избыточен и достаточно простой разметки.
Для всех представленных вариантов предлагается три схемы разметки: все файлы в одном разделе, выделение /home и выделение /home, /var и /tmp. Для сервера подходит только первый вариант, тогда как второй предпочтителен для рабочих станций. Третий, кроме как недоразумением назвать нельзя. Автоматически бить диск на несколько разделов, не имея четкого понимания причин такого разделения — глупо. А имея понимание и представление проще настроить сразу как надо вручную. Поэтому безальтернативно выбираем Все файлы в одном разделе.
В этом случае система выполнит классическую разбивку: корневой раздел в начале диска и раздел подкачки в его конце.
Для UEFI-систем добавится ESP-раздел c EFI-загрузчиком в самом начале диска, затем корневой и подкачка.
На этом этапе вы можете либо поправить схему разметки, либо оставить все как есть и перейти к следующему этапу нажав Сохранить разметку и записать изменения на диск.
Ручная разметка
Автоматическая разметка — это хорошо, вы получите заведомо рабочий результат без лишних действий, но это будет не самый оптимальный вариант. Поэтому можно разметить диск вручную и сразу так, как нужно. Если вы используете SSD, то мы советуем отказаться от стандартной схемы разметки и перенести раздел подкачки в начало диска. Почему?
Исторически раздел подкачки располагался в конце диска, потому что кривая скорости доступа жестких дисков представляла собой пологую дугу, наибольшая скорость была в начале и плавно снижалась к концу диска. Вполне логично, что систему размещали в наиболее быстрой области, а подкачку в более медленной. С твердотельными накопителями все иначе, да и понятие «начала» и «конца» диска там весьма условны, во всяком случае скорость доступа не зависит от физического места размещения данных. Поэтому при разметке мы можем исходить из иных соображений, например, удобства обслуживания.
Если при классической схеме мы скопируем разметку на более емкий диск или увеличим диск виртуальной машины, то получим схему: корневой раздел — подкачка — свободное место. Конечно, если вы используете LVM, то такая схема не доставит затруднений, а вот в остальных случаях вам придется потратить дополнительное время на перемещение раздела подкачки в конец диска и расширения корневого раздела на свободное место.
Если же поместить подкачку вначале диска, то вы получите: подкачка — корневой раздел — свободное место, после чего расширить основной раздел не составит труда.
При использовании EFI не забывайте, что первым должен идти ESP-раздел.
Перейдем к практике, на первом экране разметки дисков выбираем метод Вручную, затем выберите из списка нужный диск и нажмите Enter:
Будет предложено создать новую таблицу разделов, соглашаемся с этим. Мы рекомендуем создавать новую таблицу разделов каждый раз при новой установке.
Теперь на нашем диске появится пункт Свободное пространство, переходим на него и снова нажимаем Enter, будет предложено создать новый раздел.
Если у вас UEFI-система, то сначала создаем раздел размером не менее 500 МБ:
Указываем его местоположение в начале диска:
И выбираем тип Системный раздел EFI, метка «загрузочный» будет включена автоматически.
Затем точно также создаете раздел подкачки нужного размера:
И корневой, на все оставшееся место. По умолчанию предлагается файловая система ext4, советуем ее оставить, если нет действительных оснований использования другой файловой системы и понимания всех плюсов и минусов ее использования.
В итоге вы должны получить следующий вариант разметки:
В MBR-системах у вас будет просто раздел подкачки и корневой раздел.
Настройка LVM
Ручная настройка LVM — достаточно сложный процесс, требующий определенных знаний и выходящий за рамки данной статьи, поэтому мы будем рассматривать автоматическую настройку и сопутствующие этому особенности, для ручной настройки LVM следует обратиться к нашей статье:
LVM для начинающих. Часть 2. Основы управления томами
Важной особенностью LVM-разметки является то, что загрузчик (раздел /boot) должен находиться за ее пределами, в UEFI-системах также за пределами LVM следует располагать и ESP-раздел. Таким образом выбрав автоматическую разметку LVM и схему Все файлы в одном разделе мы получим следующую схему:
Как мы говорили выше, система автоматически создала ESP и /boot разделы размером по 500 МБ каждый, при этом ESP раздел должен располагаться первым. Запомните эту особенность на случай ручной настройки LVM в последующем. Также обращаем ваше внимание, что для современных ядер минимальный размер /boot раздела должен быть не менее 500 МБ, встречающиеся рекомендации в 256 МБ следует считать устаревшими.
Что касается самой LVM-разметки, то создана единственная группа томов (VG) — debian-vg, внутри которой расположены два логических тома (LV): root и swap_1. Расположение логических томов на диске роли не играет, так как LVM позволяет гибко управлять пространством томов, не оглядываясь на физическую конфигурацию дисковой подсистемы.
Настройка программного RAID
Программный RAID широко используется для обеспечения отказоустойчивости дисковой подсистемы и поэтому его настройку нельзя обойти стороной. Как и с LVM, при настройке программного RAID имеются некоторые особенности. В UEFI-системах ESP-разделы также следует располагать за пределами RIAD-массивов, однако на этом особенности настройки программного RAID не заканчиваются, и мы советуем обратиться к нашей статье:
Настраиваем программный RAID на UEFI-системах в Debian и Ubuntu
Отдельного разговора также заслуживает раздел подкачки. Мы, конечно, можем объединить его в RAID, но вот толку от этого немного, своп не содержит никаких критических данных, которым требуется отказоустойчивость, поэтому более разумно оставить разделы подкачки на каждом диске, не создавая из них массив. Этим вы получите в два раза больший объем пространств подкачки и более высокое быстродействие, так как будет отсутствовать пенальти на запись и современные системы умеют работать с несколькими пространствами подкачки параллельно.
Что касается схемы разметки, то мы точно также советуем размещать раздел подкачки перед корневым, в UEFI-системах самым первым должен быть ESP-раздел.
Основной залог успешного создания программного RAID-массива — это одинаковая разметка для входящих в его состав томов. Поэтому план действий будет следующий. Создаем на обоих дисках новую таблицу разделов.
Затем размечаем согласно принятой схемы, основное внимание уделяем одинаковым размерам разделов. В итоге мы должны получить на каждом диске два одинаковых раздела подкачки и два раздела для RAID, система предложит по умолчанию отформатировать в ext4 и смонтировать как корень и /home, на самом деле это не имеет никакого значения, главное — полная идентичность разметки. В UEFI-системах к ним еще добавится два ESP-раздела, которые должны располагаться самыми первыми.
Теперь переходим в раздел Настройка программного RAID и выбираем пункт Создать MD-устройство.
Затем выбираем тип RAID, в современных условиях практический смысл имеют RAID 1 и RAID 10, в нашем случае мы можем собрать из двух дисков только RAID 1 (зеркало).
После чего указываем устройства, из которых мы будем собирать RAID-массив. Обратите внимание, что программный RAID строится по схеме один массив — один раздел. Поэтому если вы применяете разметку отличную от все файлы в одном разделе, то заранее создайте нужное количество разделов на каждом диске.
Теперь созданные нами ранее разделы на каждом из дисков будут представлены как Linux RAID, а в списке дисков появится новое RAID-устройство. Создаем на нем раздел с нужной файловой системой и точкой монтирования в корень.
А общая схема разметки будет выглядеть следующим образом:
На этом завершим тему разметки дисков и двинемся дальше.
Завершение установки
Если считать установкой системы именно копирование файлов на диск, то все это время мы занимались подготовкой и только по завершение разметки на диск была скопирована базовая система. После чего нам снова придется ответить на ряд вопросов. В первую очередь нам предложит выбрать зеркало репозиториев Debian, по соображениям быстродействия следует выбирать сервера расположенные как можно ближе к физическому размещению сервера. Скажем, если сервер в датацентре в условной Германии, то следует отдать предпочтение немецким серверам. Если не знаете, какое зеркало выбрать — оставьте значение по умолчанию.
После выбора зеркала система скачает и обновит списки пакетов, а также ряд ключевых элементов системы, после чего вам будет предложено выбрать компоненты для установки. Оставляем только SSH-сервер и Стандартные системные утилиты.
Теперь нажимаем на кнопку продолжить и ждем окончания процесса установки, так как пакеты скачиваются из сети общее время сильно зависит от скорости интернет-соединения.
В завершение будет предложено установить загрузчик GRUB, соглашаемся с этим предложением.
При этом можно заметить, что программа установки позволяет выбрать только один диск и если вы используете программный RAID, то на втором диске у вас загрузчика не будет. Это не то, чтобы плохо, установить загрузчик можно и позднее, но также просто об этом и забыть. Поэтому сначала установим загрузчик на первый диск.
А в следующем окне вместо предложения перезагрузить систему нажмем кнопку Вернуться.
Перед вами появится следующее меню, в котором выбираем пункт Установка системного загрузчика GRUB:
После чего установите загрузчик на второй диск.
На этом установка завершена, можете перезагружать систему.
Вход в систему, повышение прав
Так как мы уже установили пакет OpenSSH-сервера, то можем войти в систему как локально, так и удаленно. Второй способ безусловно удобнее, даже если сервер стоит у вас под боком, потому как SSH-консоль можно держать открытой на рабочем месте вместе с другими приложениями, скажем, браузером и копировать в нее нужные команды.
Первая особенность, с которой столкнется начинающий администратор — невозможность зайти под пользователем root через SSH, это связано с настройками безопасности, и мы не видим веских причин разрешать такой вход. Лучше всего сразу приучаться делать правильно. Поэтому войдите в систему под обычным пользователем.
Теперь нужно повысить права. Если суперпользователь включен, то используйте команду:
su -
После чего укажите пароль суперпользователя. Ключ — (-l, —login) вызывает оболочку регистрации входа пользователя, что эквивалентно непосредственному входу пользователя в систему. При этом будет изменен домашний каталог и применены все настройки рабочей среды суперпользователя (маска, переменные окружения и т.д.).
Если root выключен, то выполните команду:
sudo -s
И введите пароль пользователя, под которым вошли в систему. Ключ -s аналогичен ключу — команды su и позволяет открыть оболочку как будто бы при интерактивном входе суперпользователя в систему (со сменой домашнего каталога, переменных окружения и т.д.).
Настройка сети
На этапе установки мы уже получали сетевые настройки, но они были автоматические, теперь же настала пора присвоить нашему серверу статический IP-адрес. Прежде всего посмотрим, какие сетевые интерфейсы существуют и какие у них адреса, для этого выполните команду:
ip a
Как видим, у нас есть интерфейс локальной петли и сетевой адаптер ens33, который получил динамический адрес 192.168.233.130, допустим мы хотим присвоить ему статический адрес 192.168.233.81. Для этого откроем на редактирование файл /etc/network/interfaces:
nano /etc/network/interfaces
И приведем блок, относящийся к адаптеру ens33 к следующему виду:
allow-hotplug ens33
iface ens33 inet static
address 192.168.233.81
netmask 255.255.255.0
gateway 192.168.233.2
dns-nameservers 192.168.233.2
Набор опций понятен без дополнительных пояснений, мы указали адрес, маску сети, шлюз и DNS-сервера. Если их несколько, то указываем через пробел.
Сохраняем файл нажатием Ctrl + x.
Перезагружаем компьютер:
reboot
Теперь можем присоединиться к нему по новому адресу.
Настройка репозиториев
По умолчанию в Debian подключен только репозиторий main, содержащий только свободное ПО, соответствующее критериям FSF (Free Software Foundation, Фонд свободного ПО), но существуют еще два репозитория: non-free — бесплатно распространяемое ПО, не соответствующее критериям свободного ПО, contrib — программное обеспечение содержащее несвободные компоненты или требующие проприетарного ПО, например, Oracle Java.
Опытные пользователи, зная какие именно пакеты им нужны, могут подключить только необходимые репозитории, но не будет беды, если мы подключим их все. Для этого выполните команду:
sed -i "s/main/main contrib non-free/g" /etc/apt/sources.list
После чего не забудьте выполнить обновление списка пакетов:
apt update
После чего можно выполнить обновление системы:
apt full-upgrade
Или установить дополнительное ПО, обычно мы устанавливаем двухпанельный менеджер Midnight Commander и диспетчер задач Htop:
apt install mc htop
Настройка брандмауэра iptables
В Debian 11 в качестве брандмауэра установлен пакет nftables, это более мощное и продвинутое ПО, но требующее отдельного изучения. Если вы не готовы с ним работать, то можно вернуть привычный iptables и продолжать его использование. При этом на самом деле будет продолжать работать nftables, но в режиме совместимости с iptables.
Установим необходимые пакеты:
apt install iptables iptables-persistent
Теперь в порядке перечисленном ниже выполним следующие команды:
iptables -A INPUT -i ens33 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i ens33 -m conntrack --ctstate INVALID -j DROP
iptables -A INPUT -i ens33 -p icmp -j ACCEPT
iptables -A INPUT -i ens33 -p tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
iptables -A INPUT -i ens33 -j DROP
Тем самым мы создадим минимальную конфигурацию брандмауэра. Первое правило разрешает уже установленные и связанные с ними соединения. Второе блокирует пакеты, не являющиеся первым пакетом соединения и не относящиеся к другим соединениям. Затем мы разрешаем соединения по протоколу ICMP (ping, PMTUD) и SSH-соединения (порт TCP 22). Затем полностью блокируем все остальные входящие соединения.
Проверяем, что все работает и сервер остается доступным по сети, после чего сохраняем правила командой:
iptables-save > /etc/iptables/rules.v4
Благодаря пакету iptables-persistent сохранённые правила теперь будут автоматически восстанавливаться при загрузке системы. Для их изменения удобнее всего вносить правки в файл /etc/iptables/rules.v4.
Редактируя файл следует придерживаться следующих правил: первыми всегда должны идти два правила, выделенные нами желтым, а последним — запрещающее. выделенное красным. Все остальные правила должны размещаться между ними, при этом учитывайте, что правила проверяются в порядке их перечисления в файле и после срабатывания правила прохождение пакета через брандмауэр прекращается. Поэтому размещайте более частные правила выше более общих, в противном случае они никогда не сработают.
После сохранения изменений загрузите правила командой:
iptables-restore < /etc/iptables/rules.v4
Посмотреть действующие правила и их счетчики можно командой:
iptables -L -vn
Не пренебрегайте настройкой брандмауэра даже если ваш сервер находится внутри периметра и не имеет непосредственного выхода во внешнюю сеть. Безопасности много не бывает!
Установка sudo и отключение учетной записи root
Если вы первоначально включили учетную запись суперпользователя, а теперь хотите ее выключить и далее работать через sudo, то следует выполнить ряд простых действий. Во-первых, установим пакет sudo:
apt install sudo
Затем добавим нужного пользователя в группу sudo:
usermod -a -G sudo andrey
В нашем случае это пользователь andrey. Затем выйдите из системы и войдите в нее снова, или просто перезагрузитесь. Проверьте, что указанный пользователь может повышать свои права при помощи sudo и только затем отключите учетную запись суперпользователя.
passwd -l root
Еще раз повторим, данная схема используется по умолчанию в Ubuntu и представляется нам более безопасной, нежели наличие активной учетной записи root.
Установка нового ядра
В Debian 11 используется достаточно актуальное ядро с длительным сроком поддержки 5.10 LTS, выпущенное 13.12.2020 года. Однако бывают ситуации, когда для поддержки оборудования или каких-то дополнительных возможностей требуется более свежее ядро. В этом случае потребуется установка более свежей версии. Ничего страшного в этом нет, но мы не рекомендуем устанавливать новые версии ядер без насущной на то необходимости. Хотя это Linux и здесь каждый сам кузнец собственного счастья.
Есть много способов обновить ядро, но мы рассмотрим самый безопасный — с использованием репозитория Backports. Он предоставляет пакеты из testing (в основном) и unstable (в некоторых случаях, например, для обновления безопасности) версий Debian, адаптированных для работы в стабильном (stable) выпуске.
Прежде всего подключим репозиторий:
echo "deb http://deb.debian.org/debian bullseye-backports main contrib non-free" > /etc/apt/sources.list.d/bullseye-backports.list
И обновим список пакетов:
apt update
Затем перейдем к собственно обновлению. В системе существует метапакет linux-image-amd64, указывающий на последнюю версию ядра. Выполним:
apt policy linux-image-amd64
Как можем увидеть, доступны ядра 5.10 и 5.18, но так как репозиторий Backports имеет более низкий приоритет (100 против 500), то автоматического обновления ядра не произойдет и для его установки нужно будет выполнить команду:
apt install linux-image-amd64 -t bullseye-backports
Но ядро 5.18 не является ядром с длительным сроком поддержки и если вы сторонник разумной консервативности, то стоит сначала посмотреть полный набор доступных к установке ядер:
apt-cache search linux-image
В выводе команды мы без труда найдем пакеты последней LTS-версии 5.15.
Выбираем нужный нам пакет и устанавливаем его командой:
apt install linux-image-5.15.0-0.bpo.3-amd64 -t bullseye-backports
Перезагружаемся и убеждаемся, что система работает с новой версией ядра.
Заключение
В данном материале мы постарались коротко изложить все основные аспекты установки современной системы Debian для серверного применения, позволяющие разумно подойти к этому вопросу и получить на выходе полностью работающую систему, удовлетворяющую предъявленным требованиям. Но это только начало большого пути, и мы рекомендуем для дальнейшей настройки использовать материалы нашего сайта, как наиболее проверенные и совместимые с полученной в результате начальной настройки конфигурацией.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Когда-то давно, в 2011 году, я пришёл на хабр со статьёй «Debian Server для новичка», которая представляла из себя систематизацию различной информации и представление её в актуальном и работоспособном виде. Данная статья так же позиционируется как справочный материал для новичка или обычного пользователя Linux, этакий мой небольшой вклад в популяризацию Linux. По сути, всё о чём я буду писать – это некая развёрнутая инструкция по установке и настройке домашнего облачного сервиса Nextcloud с нуля.
Созданная виртуальная машина с Nextcloud отработала с марта 2017 года практически без сбоев и осенью 2017 года я задумался о статье. У меня осталось много записей и комментариев в части решения различных проблем и нюансов, я долго вынашивал идею всё же привести всё это в порядок и опубликовать и новогодние праздники 2018 года мне в этом помогли. Надо сказать, что статья запоздала как минимум на полгода, но, думаю, что установить и настроить актуальные версии Debian и Nextcloud по аналогии с нижеприведённой информацией не составит большого труда, хотя, как известно, дьявол кроется как раз в деталях.
Ниже читатель познакомится с предпосылками создания своего облака и получит работающие инструкции по стартовой настройке Debian, лёгкому тюнингу среды Gnome3, компиляции, сборке и установке пакетов для Debian, установке и настройке сервисов Apache, SQL и PHP и начала работы с ними, генерации и подключения самоподписного сертификата SSL для виртуального хоста Apache, установка и настройка Nextcloud. Я не стал оформлять эту статью как технический мануал или туториал с длинной вереницей команд, а решил попробовать написать статью как рассказ, но без ущерба технической составляющей. Опытный пользователи Linux вряд ли тут найдут что-то новое, но, возможно, смогут прочитать его как тематическую историю в минутку своего свободного времени.
Оглавление
Часть 1. Настройка среды Debian для повседневного использования
Часть 2. Создание сервера — настройка LAMP в Debian
Часть 3. Создание персонального облака — установка и настройка Nextcloud
Часть 4. Актуализация 2018 – Debian 9 и Nextcloud 13
Часть 5. Актуализация 2019 – PHP 7.2, MariaDB 10.4 и Nextcloud 17
Быстрая навигация по главе
Предисловие
Постановка задачи
Создание и базовая настройка виртуальной машины
Настройка в панели управления
Настройка BASH
Настройка репозиториев
Обновление операционной системы
Установка программного обеспечения
Настройка программного обеспечения
Настройка gnome
Настройка сети
Настройка файрвола
Установка vmware-tools 10.0.10 в среде Debian 8.7.1
Сборка, установка и настройка notepadqq
Сборка и установка Double Commander
Предисловие
Наша история начинается в конце 2015 года, когда мной был приобретён новый смартфон. Motorola Droid Turbo оказался производительным аппаратом, с большой памятью, QHD дисплеем с приемлемой (относительно небольшой) диагональю, ёмким аккумулятором и практически чистым Android’ом на борту, что в моих глазах всегда являлось несомненным плюсом. Отделка задней панели баллистическим нейлоном придаёт ему своеобразный стиль, выделяясь на фоне аппаратов эпохи «обмылки». Давно привычные жесты включения фонарика потряхиванием или камеры быстрым помахиванием телефона уже вроде бы никого и не удивляют, но Motorola останется навсегда в истории как первопроходец с безупречной реализацией подобного функционала – к жестам я привык настолько, что даже не знаю где находится значок камеры. В общем, вы уже поняли, что телефон мне нравится всё хорошо и я от него в восторге до сих пор, кроме одного досадного момента – вся память телефона распаяна внутри него. И чтобы потерять наши драгоценные 64 гигабайта (пользовательских данных на самом деле меньше) нужно просто споткнуться так, чтобы телефон выпал из рук и «удачно» упал. Хотя в какой-то день он может просто не включиться. Или когда-то его могут банально украсть.
Все пользователи компьютерной техники делятся на две группы – те, кто делают бекапы и те, кто ещё их не делают. Я из второй группы перешёл в первую лет пятнадцать назад. По крайней мере на первом телефоне резервирование было продумано следующим образом. Все приложения с их настройками ежедневно автоматически бекапились через Titanium Backup на SD карту. На телефон устанавливалась SambaDroid, которая настраивалась таким образом, чтобы расшаривать SD карту телефона только при подключении его к сети с определённым SSID. Как нетрудно догадаться это происходило только при подключении телефона к Wi-Fi маршрутизатору у меня дома. На компьютере периодически запускался BitTorrent Sync, который на всякий случай запирался через файрвол в локальной сети (разрешалась активность только по локальным адресам), и при обнаружении расшаренной карты синхронизировал её содержимое с папкой на компьютере. В случае поломки телефона можно было просто вытащить SD карту с данными. В любом другом случае – всегда есть бэкап карты памяти на компьютере. Если в этот же день сломается компьютер — есть холодный бекап диска с данными, который находится в другом доме. Сон спокойный, здоровый, крепкий, поэтому руки от напряжения не трясутся и, как следствие, телефон никогда и не падает.
А что делать с этим новым телефоном? Приложения так же бекапятся через Titanium Backup. Но SD карта не вытаскивается, а SambaDroid, отлично работавшая на Android 2.х на линейке 4/5/6 ведёт себя нестабильно, да и от BitTorrent Sync я через некоторое время отказался. Наверняка можно было бы найти аналогичное решение, но я загорелся универсальным облачным решением. Казалось бы, вывод напрашивается сам собой и очевиден – есть Google Drive и куча приложений, которые синхронизируют указанные данные с облаком, обеспечивая (в теории) End-to-End шифрование. Но… с таким подходом эта статья бы никогда не была написана! Тем более автор в 2018 году даже не собирается подключать гуглоаккаунт к телефону и уж тем более не думает о синхронизации фотографий своих котиков с какими-то другими сервисами. Да, у меня паранойя, недоверие к корпорациям, желание держать личные данные под своим контролем, желание независимости от работы другого сервиса (который может и закрыться) и я не хочу платить за куцые гигабайты в облаке.
Пока я думал о том, что нужно что-то делать в плане исправления этой ситуации пролетел весь 2016 год и я понял, что вот, прямо сейчас надо уже реально озаботиться этой проблемой. Хотелось всё сделать красиво, с прицелом на будущее, на универсальность, надежность и, разумеется, автоматизм. Так как я активно не приемлю слишком уж большое и навязчивое участие корпораций в личной жизни решено было попробовать сделать своё персональное облако в локальной сети, используя ownCloud.
Цитата из википедии:
ownCloud — это Свободное и открытое веб-приложение для синхронизации данных, общего доступа к файлам и удалённого хранения документов в «облаке». ownCloud написан на языках программирования PHP и JavaScript. ownCloud работает с базами данных SQLite, MariaDB, MySQL, Oracle Database и PostgreSQL, и работает на серверах под управлением Linux, в том числе на Raspberry Pi. Разработку ownCloud начал один из разработчиков KDE, Франк Карлитшек, в январе 2010 г. Он стремился создать бесплатную альтернативу коммерческим облачным сервисам хранения данных. В отличие от них, ownCloud можно установить на собственный сервер без дополнительных затрат.
Возможности:
— Хранение файлов с использованием обычных структур каталогов, или с использованием WebDAV
— Криптография
— Синхронизация между клиентами под управлением Windows (Windows XP, Vista, 7 и 8), Mac OS X (10.6 и новее) или Linux
— Календарь (также как CalDAV)
— Планировщик задач
— Адресная книга (также как CardDAV)
— Потоковое мультимедиа (используется Ampache)
— Администрирование пользователей и групп (с использованием OpenID или LDAP)
— Расшаривание контента между группами или используя публичные URL
— Онлайн текстовый редактор с подсветкой синтаксиса и сворачиванием. Анонсирована поддержка онлайн-версий редакторов LibreOffice.
— Закладки
— Механизм сокращения URL
— Фотогалерея
— Просмотрщик PDF (используется PDF.js)
— Просмотрщик ODF файлов (.odt, .odp, .ods)
— Модуль логирования
По функционалу мы видим полноценное облако, которое может крутиться на… да вон том компьютере! При сильной паранойе активность сервиса можно запереть внутри локальной сети через файрвол.
У меня уже были сохранены некоторые ссылки на материал по установке и настройки ownCloud, но когда я начал разбираться с ним, то обнаружил, что в 2016 году главный разработчик ownCloud (Франк Карличек) покинул компанию и объявил о создании форка — Nextcloud. В отличии от ownCloud, который платен при некоторых условиях, Nextcloud бесплатен полностью. Учитывая то, что работу над новым форком возглавил имеющий большой опыт подобной разработки Франк Карличек, я решил выбрать Nextcloud. В начале 2017 года актуальной версией Nextcloud была версия 11.0.2 и именно её установка и настройка будет описана ниже. На январь 2018 года актуальной версией является 12.0.4, но, я думаю, никаких принципиальных отличий в установке и настройке не должно быть.
Постановка задачи
Поначалу всё казалось простым и я даже предположить не мог, что посидеть «пару выходных» растянется аж на два, два с половиной интересных месяца. Нередко красноглазил по ночам и задавал умные и не очень вопросы на тематических форумах. Мой совет новичкам – если что-то хотите сделать, не пугайтесь объёму работы и делайте. Главное, чтобы получилось хоть что-то в первый раз. Путь даже оно работает криво. Можно делать не понимая, как обезьяна, копировать длинную череду команд нередко доходя до места где что-то сбоит и просто ничего не получается. Может быть была допущена ошибка ранее, может опечатка в команде, может автор в своём мануале пропустил строку кода/команды, может быть в примере релиз ОС другой и на вашем работать не будет, может быть библиотеки не те – да мало ли что ещё может быть! Но когда что-то получится ты удивлённо скажешь: «Черт подери – заработало!» Это стоит того и будет началом появления азарта, стимулом разбираться дальше и уверенность в том, что получится: ведь если получилось один раз, то значит получится и в следующий, надо просто разбираться.
Итак, нужно определиться что именно нужно делать. Имеется пара телефонов, которые нужно подключить к облаку. Кроме этого хотелось бы еще подключить к нему и компьютер – объём дискового пространства в облаке теперь зависит только от моего желания и мне не нужно постоянно доплачивать за 10/20/30 гигабайт – я могу просто купить жесткий диск на пару терабайт. Центральным звеном в домашней сети является Wi-Fi маршрутизатор – именно к нему подключены телефоны через Wi-Fi, компьютер и ещё один компьютер, который выполняет роль нечаянного «сервера»: изначально компьютер собирался под задачи несостоявшегося HTPC, а сейчас на нём просто работает софт виртуализации от VMWare. VMWare Workstation имеет свой собственный виртуальный маршрутизатор, к которому пока подключена только одна виртуальная машина с FTP сервером. Решение напрашивается само собой – создать и подключить ещё одну виртуальную машину, через сетевые настройки VMWare пробросив на неё порты 80 (HTTP) или 443 (HTTPS). Решение модульное и элегантное в том плане, что абсолютно аппаратно-независимое и единожды настроенную виртуальную машину можно будет легко развернуть где угодно, на любом обычном компьютере.
Создание и базовая настройка виртуальной машины
Nextcloud – совсем грубо говоря, это сайт, который крутится на веб-сервере. В качестве веб-сервера я выбрал LAMP = Linux + Apache + MySQL + PHP. Это значит, что всё это нужно установить и настроить. А чтобы оно правильно работало надо понимать что устанавливать и как настраивать.
С Linux я сталкиваюсь только периодически и это больше ещё одно хобби, чем необходимость. Но раз уж я замахнулся на универсальность, то на этот раз я решил разбить всю работу на три логических части, каждая из которых должна заканчиваться вполне определённым и универсальным результатом. Для начала необходимо сделать себе удобную среду для работы, то есть не просто установить систему на виртуальную машину, но настроить её под себя, приблизить её к тому виду, который мне удобнее и привычнее. Второй этап – доведение этой машины до функционирующего веб-сервера. Третий – превращение веб-сервера в облако.
В качестве операционной системы был выбран Debian 8.7.1. В VMWare Workstation создаётся виртуальная машина, которой отводится один двухпотоковый процессор, два гигабайта оперативной памяти и жёсткий диск объёмом 120 гигабайт. Режим работы сетевой карты – NAT. Скачиваем ISO образ операционной системы для архитектуры amd64. После скачивания подключаем образ к виртуальному приводу и запускаем виртуальную машину. Установка операционной системы довольно банальна и её можно выполнить даже без мурзилок, которых предостаточно в интернете. В качестве графического окружения был выбран Gnome3, а также установлены «Standard system utilities» и «Print Server». Жесткий диск в процессе установки разбит на два раздела — общий раздел (/, /home, /usr и т.д.) и swap. Нового созданного пользователя обозвали нейтрально «user».
Сразу после установки пользователю показывается пустой рабочий стол. Файловый менеджер наутилус — типа проводника Windows, никогда не понимал почему им пользуются. Меню приложений не блещет своим структурированием. NumLock после загрузки всегда отключен. От текстовых редакторов nano или vi начинающий линуксоид вообще впадает в уныние. Надо всё это как-то исправлять. Нижеприведённое описание системы «под себя». О вкусах не спорят: кому-то понравится, кому-то – нет. Замечу, что без преодоления трудностей профессионального роста не будет и чем больше копаешься в чём-то — тем больше понимаешь как это работает.
Настройка в панели управления
Я привык переключать раскладку клавиатуры кнопками CTRL и SHIFT. Возможно в этом виноват драйвер клавиатуры со времён MS DOS 6.22, но что ж теперь поделать – привычка вторая натура. Кроме того, я не хочу, чтобы виртуальная машина засыпала или гасила экран и не хочу после каждого запуска вводить пароль.
Элементарная начальная настройка среды производится в панели управления:
— Язык и регион → Добавить русский язык в источники ввода.
— Клавиатура → Комбинации клавиш → Ввод → Клавиша модификатор переключает источники ввода → Назначить кнопку переключения языков Ctrl+Shift (если невозможно установить такое сочетание — пропустить этот шаг, настроим в разделе «Настройка gnome», который приведён ниже).
— Клавиатура → Комбинации клавиш → Дополнительные комбинации → Добавить новый пункт с названием «Terminal» и командой «x-terminal-emulator». После добавления щёлкаем по надписи «Выключен» и вводим комбинацию двух клавиш: Super (Win) + t.
— Мониторы → Установить разрешение экрана под текущий дисплей, так как по умолчанию установлено некомфортное 800х600.
— Электропитание → ОТКЛ выключение дисплея.
— Подробности → Съёмный носитель → ОТКЛ автозапуск при подключении носителей.
— Пользователи → ВКЛ автоматический доступ для пользователя user.
Настройка BASH
Следующий важный этап – настройка терминала. С командной строкой работать придётся очень много. Мало того, некоторые, если не многие, вещи в Linux проще и удобнее делать через терминал и именно поэтому в предыдущем пункте мы сделали комбинацию клавиш для быстрого вызова терминала. Bash — это интерпретатор командного языка, выполняющий команды, поступающие с клавиатуры. Bash умеет подсвечивать разным цветом файлы, папки, сетевые папки, файлы с различными правами доступа. С подстветкой становится ориентироваться несколько проще и веселее.
Важное замечание. Строки команд, начинающиеся с символа $, будут обозначать, что команду необходимо ввести от лица пользователя – нужно просто открыть терминал (ищется в меню приложений или просто нажимается комбинация Super+T) и ввести команду. Если строка начинается с символа # — это значит, что ввод должен производиться от имени суперпользователя (root). Для этого нужно открыть терминал пользователя и ввести команду:
$ su
После чего ввести пароль суперпользователя, который был задан при установке системы.
Итак, как мне «раскрасить» терминал? Для этого выполняем команду:
$ nano /home/user/.bashrc
По этой команде в текстовом редакторе nano откроется конфигурационный файл bashrc. В этом файле нужной найти и раскомментировать строку «force_color_prompt=yes». Ниже ищем строку следующего вида (ниже условия if [ «$color_prompt» = yes ]; then):
PS1=’${debian_chroot:+($debian_chroot)}[33[01;32m]u@h[33[00m]:[33[01;34m]w[33[00m]$ ‘
и копируем её (Shift+Ctrl+C), после чего редактор можно закрыть (Ctrl+X) с сохранением сделанных изменений.
Далее выполняем следующую команду:
# nano /root/.bashrc
Опять открывается конфигурационный файл, но уже для суперпользователя. Ниже закомментированной строки «#PS1=…» нужно вставить (Shift+Ctrl+V) скопированную строку с небольшим изменением (с заменой числа 32 на 31):
PS1=’${debian_chroot:+($debian_chroot)}[33[01;31m]u@h[33[00m]:[33[01;34m]w[33[00m]$ ‘
Это небольшое изменение изменит цвет приглашения Bash: пользовательское приглашение user@debian будет подсвечиваться зелёным, а суперпользовательское root@debian – красным. Это поможет от нечаянной путаницы, когда по ошибке вводятся команды не от того пользователя от которого нужно.
Настройка репозиториев
Репозиторий – это база пакетов, доступных для установки. Важно поддерживать эту базу в актуальном состоянии. Сразу после установки у нас прописан базовый репозиторий и ссылка на установочный DVD, который содержит какое-то количество популярных пакетов. Для работы с репозиториями можно использовать программу synaptic с графическим интерфейсом. Но гораздо проще отредактировать список вручную через обычный текстовой редактор:
# nano /etc/apt/sources.list
Проверяем список репозиториев на соответствие нижеприведённому списку.
# security updates
deb security.debian.org jessie/updates main contrib non-free
deb-src security.debian.org jessie/updates main contrib non-free
# jessie-updates
deb httpredir.debian.org/debian jessie-updates main contrib non-free
deb-src httpredir.debian.org/debian jessie-updates main contrib non-free
# binary and source packages
deb httpredir.debian.org/debian jessie main contrib non-free
deb-src httpredir.debian.org/debian jessie main contrib non-free
# backports
# deb httpredir.debian.org/debian jessie-backports main contrib non-free
# deb-src httpredir.debian.org/debian jessie-backports main contrib non-free
Репозиторий Backports прописан, но отключен. Строго говоря его можно и не прописывать, но если прописать сразу, то потом отключать или подключать этот репозиторий будет проще – нужно будет просто закомментировать или раскомментировать требуемые строчки. Зачем он вообще нужен? Дело в том, что наряду с тем, что Debian является одним из самых стабильных дистрибутивов, как следствие, ПО в его репозиториях зачастую прилично устаревшее. Подключение Backports – это простой способ получить гораздо более новую версию какого-то софта (даже новее, чем в ветке testing Debian). Но нужно быть очень внимательным, так как при установке какой-то программы по зависимостям могут подтянуться другие пакеты, которые могут сломать систему из-за несовместимости старого софта с новыми пакетами. Backports – этот тот случай, когда вы точно знаете зачем это делаете.
После любого изменения содержимого файла sources.list нужно обязательно выполнить синхронизацию с репозиториями:
# apt-get update
Обязательно смотрим лог – никаких ошибок быть не должно. В противном случае нужно проверить корректность содержимого файла sources.list.
Обновление операционной системы
Чтобы узнать текущую версию системы выполним команду:
$ cat /etc/debian_version
Если система установлена из образа по вышеприведённой ссылке, то её номер будет 8.7.
Для обновления системы существует две команды: apt-get upgrade и apt-get dist-upgrade. Первая команда только обновит установленные пакеты, но при этом могут возникнуть конфликты и неудовлетворённые зависимости. Это некое безопасное обновление, при котором старые программы точно не портятся, но новые могут и не заработать. Вторая же команда удалит старые пакеты, разрешит конфликты, доставит необходимые зависимости и доставит новые пакеты, если требуется. При возникновении конфликтов она будет пытаться произвести обновление наиболее важных пакетов за счет менее важных. Этакое более умное обновление.
Обновим систему:
# apt-get dist-upgrade
После обновления системы проверяем лог на предмет ошибок, проверяем новую текущую версию системы и убеждаемся, что всё в рамках ожидаемого.
Установка программного обеспечения
Устанавливаем следующие пакеты:
# apt-get install mc
# apt-get install gksu
# apt-get install numlockx
# apt-get install libcanberra-gtk-module
# apt-get install libqt5webkit5 libqt5svg5 coreutils
# apt-get install doublecmd-gtk
# apt-get install galculator
# apt-get install samba smbclient cifs-utils
# apt-get install jigdo-file
# apt-get install audacious
# apt-get install smplayer
# apt-get install firefox-esr
# apt-get install gufw
mc – это старый добрый Notron Commander только в Linux. Забываем про команды ls, cd, mkdir, rm и прочие.
gksu – позволит запускать программы с графическим интерфейсом от имени суперпользователя, а так же добавит в меню приложений терминал суперпользователя, который можно будет запускать сразу, а не выполнять последовательность «терминал → $ su → ввод пароля суперпользователя».
numlockx – поможет решить проблему с режимом numlock после загрузки системы, так как по умолчанию он всегда выключен.
Пакеты libcanberra-gtk-module, libqt5webkit5 libqt5svg5 coreutils нужны для функционирования двухпанельного менеджера Double Commander и текстового редактора Notepadqq, который мы установим чуть позже.
doublecmd-gtk – аналог Total Commander для Linux.
galculator – просто калькулятор, который умеет переключаться в инженерный вид.
samba smbclient cifs-utils – пакеты, необходимые для обеспечения работы в сети: расшаривание папок, доступ к расшаренным папкам, монтирование сетевых ресурсов.
jigdo-file – это инструмент для закачки и обновления образов CD, DVD, BD. например, если вы когда-то захотите создать полностью автономный и полный официальный репозиторий из Blu-Ray дисков дистрибутива Debian, то именно этот «торрент» нам понадобится, так как диски Blu-Ray распространяются в первую очередь через jigdo.
audacious – аудиоплеер.
smplayer – видеоплеер.
firefox-esr – браузер не нуждающийся в представлении.
gufw – графическая оболочка для утилиты настройки брандмауэра.
Вышеприведённые программы будут несколько дополнять базовый пакет ПО установленной системы, который немал, если при установке системы был выбран стандартный набор утилит. Функции MS Office выполняет пакет программ LibreOffice, есть графический редактор GIMP, Transmission для торрентов, почтовый клиент Evolution, просмотрщик фотографий, простой текстовой редактор gedit и прочее ПО. Аудио и видеоплееры в стандартном наборе тоже есть, но audacious и smplayer будут являться более функциональными и удобными программами.
Настройка программного обеспечения
numlockx решает проблему с режимом numlock после загрузки системы. После установки пакета нужно просто выполнить команду:
# numlockx on
И теперь после загрузки операционной системы NumLock будет всегда включен.
Файловый менеджер Double Commander я привёл к более минималистическому виду произведя следующие действия в его меню:
— Вид → Краткий (выполнить на обоих панелях)
— Настройки → Параметры → Инструменты → Терминал → В разделе «Команда запуска терминала» прописать «x-terminal-emulator», поле параметров оставить пустым
— Настройки → Параметры → Шрифты → все шрифты =11, шрифт «Просмотрщика (режим „Книга“)» =14
— Настройки → Параметры → Просмотр файлов → Выбрать метод сортировки «Естественная сортировка: алфавитно-числовая»
— Настройки → Параметры → Просмотр файлов → Установить опцию «Показывать системные и скрытые файлы»
— Настройки → Параметры → Вид окна → Установить только след. опции:
— Главное меню
— Панель инструментов + Плоские
— Кнопка списка дисков
— Строка свободного места на диске + Кратко
— Текущий путь
— Заголовки табуляторов
— Строка состояния
— Кнопки функциональных клавиш
— Плоский интерфейс
— Панель фоновых операций
Видеоплеер SMPlayer так же был немного настроен через меню пункт «Настройки»:
— Панели → ОТКЛ Главная панель и Языковая панель
— Настройки → Основные: ОТКЛ «Запоминать настройки всех файлов»
— Настройки → Внешний вид: Автоматически изменять размер — ВКЛ «Когда это нужно»
— Настройки → Внешний вид: ОТКЛ «Запоминать позицию и размер»
— Настройки → Обновления: ОТКЛ «Проверить обновления» и ОТКЛ «Открыть страницу с информацией после обновления»
Из минимальных расширений для firefox стоит упомянуть Ghostery, с помощью которого можно блокировать многие следящие жучки и рекламу, и friGate, расширяющий возможности браузера по настройке прокси (прокси нам, конечно ни к чему, но вдруг понадобится – так он всегда тут, под рукой). Отмечу, что стоит ставить friGate версии 2.2.1.1 (из архивов), так как ветка 3.х демонстрирует полную победу «эффективного» менеджмента и маркетинга над здравым смыслом.
Что делать, если в браузере нужен Flash Player? На странице загрузки Adobe Flash Player выбираем .tar.gz для Linux и скачиваем предложенный файл. Из архива необходимо «достать» libflashplayer.so и скопировать его в /home/user/.mozilla/plugins. Все действия можно сделать через Double Commander – он умеет заходить в архивы как папки. Ниже я привёл как это сделать через команды в терминале:
[ Данный текст написан специально для сайта geektimes.ru автором AlexanderS.
Ссылка на источник необязательна, но его упоминание крайне желательно! ]
$ cd /home/user/Загрузки
$ mkdir flash
$ tar xzf flash_player_npapi_linux.x86_64.tar.gz -C flash
$ mv flash/libflashplayer.so /home/user/.mozilla/plugins
После перезапуска firefox и разрешения работы плагина флеш на сайтах должен заработать. Но в некоторых случаях это может быть недостаточно или задачи требуют запуска флеш локально из какого-то приложения. Тогда можно установить Flash Player в систему, хотя мне кажется это далеко не лучшая идея (собственно, как и разрешать flash в барузере). Для этого нам нужно сконвертировать полученный архив в DEB пакет, который потом установить с помощью менеджера пакетов. На самом деле это просто.
Устанавливаем конвертер и компилятор:
# apt-get install alien make gcc
Преобразовываем полученный архив:
# alien —to-deb flash_player_npapi_linux.x86_64.tar.gz
Смотрим какой пакет у нас получился, допустим flash-player-npapi-linux.x86-64_1-2_all.deb, и устанавливаем его:
# dpkg —install flash-player-npapi-linux.x86-64_1-2_all.deb
Настройка gnome
Пришла пора внести изменения в соответствии со своими представлениями как должно выглядеть графическое окружение. Ведь одно из самых замечательных свойств в Linux – тут много чего можно настроить даже не являясь программистом в полном понимании этого смысла.
С установкой Double Commander можно сказать: «Долой командную строку!» Но как быть если нужно побродить в папках от суперпользователя? Каждый раз заходить в терминал суперпользователя и набирать doublecmd? Можно проще! Создадим ярлык в меню для Double Commander, который будет запускать его в сессии суперпользователя:
# doublecmd /usr/share/applications
Нужно сделать копию файла doublecmd.desktop и назвать новый файл doublecmd-root.desktop. Можно использовать привычное сочетание клавиш Ctrl+C и Ctrl+V. Далее нужно открыть файл doublecmd-root.desktop (нажимаем привычную кнопку F4 для запуска встроенного в файловый менеджер текстового редактора) и скорректировать соответствующие строки к следующему виду:
Name=Double Commander [root]
Exec=gksu doublecmd
Затем закрываем все открытые программы и идём в меню «Приложения», в котором удаляем все значки из избранного (левая вертикальная колонка с иконками программ). После чего из меню программ добаляем (перетаскиваем) в избранное значки в следедующем порядке: Double Commander → Nautilus → Firefox → Терминал → Galculator → Терминал суперпользователя → Double Commander [root].
После этих изменений перезагружаем графическую оболочку: нажимаем Alt+F2 и вводим команду r.
Теперь приступим к тонкой настройке оболочки. Для этого существует специальный софт:
$ gnome-tweal-tool
Замечу, что запускать команду нужно только от имени пользователя, а не суперпользователя. Я некоторое время запускал её из-под суперпользователя и не мог понять почему у меня вообще ничего не отрабатывает. После запуска перед нами появляется меню, в котором я сделал следующие изменения:
— Верхняя панель → ВКЛ отображение даты
— Окна → ВКЛ разворачивание и сворачивание окон
— Рабочий стол → ВКЛ отображения значков на рабочем столе, ОТКЛ системных значков (Сеть, Корзина и т.д.)
— Расширения → ВКЛ расширения Applications Menu, Window List
— Электропитание → выключение компьютера при нажатии на кнопку питания (выбрать Shutdown)
Если на этапе «Настройка в панели управления» не получилось настроить переключение раскладки клавиатуры по Ctrl+Shift, то вносим изменение с следующий пункт:
— Клавиатура → в пункте «Переключение на другую раскладку» выбрать сочетание клавиш Ctrl+Shift
В пункте «Расширения» внизу есть ссылка на загрузку дополнительных расширений, при переходе по которой в браузере откроется сайт с дополнениями для gnome. Через поиск находим расширения Lock keys и Remove dropdown arrows и устанавливаем их. Будьте внимательны – перед поиском расширений необходимо в браузере разрешить временное выполнение плагина Gnome Shell Integration. При открытии странички с расширением вверху есть движковая кнопочка ON/OFF, по нажатию на которую будет предложено добавить расширение. Первое расширение добавит индикатор кнопок Caps Lock и Num Lock (у меня беспроводная клавиатура, на которой соответствующих индикаторов нет). Второе – уберёт ниспадающие стрелочки у меню приложений, окон на панели задач и языковой панели.
В результате такого нехитрого тюнинга графическое окружение у нас приблизилось к более практическому виду.
Как было:
Как стало (разрешение экрана, к сожалению, уже другое):
Отличий может быть и немного на первый взгляд по сравнению с тем количеством действий, которое было сделано, но зато теперь понятно, как и что делать и куда лезть в случае необходимости. Как как-то говорил наш лектор по квантовой физике: «От вас не требуется прямо сейчас понимать квантовую физику, от вас требуется понимать в какой раздел учебника открыть, когда в этом наступит необходимость».
Настройка сети
Для сетевого взаимодействия с своей виртуальной машиной создадим папку и всем дадим права на её изменение:
$ mkdir /home/user/Net
$ chmod 777 /home/user/Net
Теперь нужно эту папку расширить. В Linux это делает очень просто:
# mcedit /etc/samba/smb.conf
В конце открывшегося файла нужно добавить новую секцию, прописав следующий текст:
[Net]
path = /home/user/Net/
comment = Net Folder
readonly = no
guest ok = yes
После всех этих действий необходимо перезапустить сервис для применения нового конфига:
# service smbd restart
Никаких перезагрузок операционной системы не требуется — с хостовой операционной системы сразу станет доступна сетевая папка Net внутри гостевой виртуальной машины.
Настройка файрвола
Для настройки брандмауэра в Linux имеется мощное средство IPTables. К сожалению сходу в него сразу не погрузиться, тем более новичку, а если периодически не пользоваться, то утратить опыт настройки довольно легко. Поэтому будем использовать специальную утилиту для конфигурирования правил iptables — Uncomplicated Firewall (ufw). Правила можно создавать через графический интерфейс, для чего было установлен gufw, но, как я говорил, начально это проще сделать через терминал.
Включаем логгирование файрвола и настраиваем его правила – запрещаем все входящие:
# ufw logging on
# ufw default deny incoming
# ufw default allow outgoing
Разрешаем соединения для сетевого окружения и доступа к файлам:
# ufw allow 138/udp
# ufw allow 139/udp
# ufw allow 139/tcp
# ufw allow 445/tcp
Разрешаем соединения для функционирования почтовых клиентов:
# ufw allow 25
# ufw allow 465
# ufw allow 110
# ufw allow 143
# ufw allow 993
Включаем защиту:
# ufw enable
Установка vmware-tools 10.0.10 в среде Debian 8.7.1
vmware-tools помимо драйверов для виртуального оборудования (например, видеокарты или чипсета) дадут возможность подключать к виртуальной машине любые папки из хостовой системы, а также включат функционал общего буфера обмена межу хостовой и гостевой системами.
Так уж получилось, что моя история работы с vmware-tools в Linux – это история периодического хождения по граблям. Одно время я даже использовал open-vm-tools, но там были проблемы с монтированием папки hgfs (именно в ней появляются подключенные папки в разделе Shared Folders настроек виртуальной машины).
В начале 2017 года у меня была VMWare Workstation 12.1.0, которая комплектовалась набором ISO образов vmware-tools версии 10.0.10. Как ни странно, всё прошло неожиданно гладко, тихо и спокойно.
Для установки vmware-tools нам нужно будет установить компилятор и, обязательно, headers, без которых нормально vmware-tools, по крайней мере раньше, не собирались в принципе:
# apt-get install linux-headers-$(uname -r) make gcc
На этот раз я не стал помещать образ linux.iso в виртуальный привод, а скопировал его в сетевую папку (сеть-то теперь у нас уже есть) после чего примонтировал его в Linux и распаковал нужный архив:
# mkdir /mnt/iso
# chmod 777 /mnt/iso
# mount -o loop -t iso9660 /home/user/Net/linux.iso /mnt/iso
$ tar xvzf /mnt/iso/VMwareTools-10.0.10-4301679.tar.gz -C /home/user/Net
Теперь можно запустить скрипт, который скомпилирует и установит vmware-tools:
$ cd /home/user/Net/vmware-tools-distrib
# ./vmware-install.pl
На первый вопрос скрипта нужно ответить утвердительно, на все последующие вопросы — отвечать значениями по умолчанию (просто нажимать везде Enter). В процессе компиляции могут появляться предупреждения, но никаких ошибок быть не должно.
После установки удаляем ненужные файлы и перезагружаемся:
# umount /mnt/iso
$ rm -rf /home/user/Net/vmware-tools-distrib
$ rm /home/user/Net/linux.iso
# reboot
После перезагрузки стоит «сходить» и проверить наличие папки /mnt/ngfs – если она существует, то установка прошла корректно. Кроме этого, должно начать нормально работать масштабирование разрешения внутри виртуальной системы под размер окна VMWare и включиться совместный буфер обмена.
Сборка, установка и настройка notepadqq
Я давно привык к связке Total Commander + Notepad++ и, естественно, искал альтернативу в Linux. Роль Total Commander неплохо заменяет Double Commander, хотя полностью Total заменить нечем. Нашёлся и аналог Notepad++, который называется Notepadqq, который так же полностью не заменяет Notepad++, однако лучше встроенного редактора Double Commander или того же nano. По крайней мере подсветка синтаксиса в Notepadqq есть и она нормально работает.
Внезапно появилась только одна проблема – в репозиториях пакета не было. Совместимый deb пакет для установки я нашёл, но версия была неактуальная и софт откровенно и безбожно глючил. Вариантов не было – надо было самому собирать пакет из доступных исходников.
После скачивания архива с исходным кодом внутри обнаружился файл README.md, в котором была найдена инструкция по сборке и установке пакета с помощью утилиты make. Однако мне хотелось иметь полноценный пакет, который я бы мог установить и безболезненно удалить, чего в принципе невозможно, установив его через make install. Вообще, на Хабре есть хорошая статья на эту тему. Поэтому я собирал пакет через checkinstall.
Сначала нужно установить пакеты, необходимые для работы:
# apt-get install git qt5-qmake checkinstall
# apt-get install libqt5webkit5 libqt5svg5 coreutils
# apt-get install libqt5webkit5-dev libqt5svg5-dev qttools5-dev-tools
# apt-get install libcanberra-gtk-module
Скачиваем исходный код (на начало 2017 года актуальной версией была 1.0.1) и запускаем сессию fakeroot:
$ git clone github.com/notepadqq/notepadqq.git
$ cd notepadqq
$ fakeroot
Fakeroot запускает программы в особом окружении, которое эмулирует сессию супер-пользователя. Повышенные права могут потребоваться для работы утилиты make.
Теперь нужно сконфигурировать окружение для проекта в зависимости от архитектуры процессора (в моём случае – первый вариант, x86_64):
$ ./configure —prefix /usr —qmake /usr/lib/x86_64-linux-gnu/qt5/bin/qmake
или
$ ./configure —prefix /usr —qmake /usr/lib/i386-linux-gnu/qt5/bin/qmake
или
$ ./configure —prefix /usr —qmake /usr/lib/arm-linux-gnueabihf/qt5/bin/qmake
И компилируем программу, наблюдая за происходящей магией в терминале:
$ make
После успешной компиляции можно собрать пакет с заполнением информации о нём:
$ checkinstall -D —install=no
Если запустить checkinstall без директивы «—install=no», то собранный пакет автоматически установится в систему, а файл пакета будет сразу удалён. Меня это категорически не устраивало, так как для сборки я использую отдельную виртуальную машину (не стоит замусоривать целевую машину различными компиляторами, IDE и прочим софтом, который там никогда использоваться не будет) и в результате мне нужно было получить нормальный DEB пакет, который я могу перенести на нужную виртуальную машину и там установить. Директива «—install=no» нужна для того, чтобы только создать пакет и не устанавливать его.
В процессе сборки нам будет задан вопрос об описании пакета. Я написал следующее: «Notepadqq 1.0.1 amd64 build 20170326». После ввода описания, я бы рекомендовал заполнить поле Maintainer (сборщик пакета, его сопроводитель) – нажать кнопку 0 (ноль) и ввести свой ник или хоть что-то, но не оставлять его пустым.
После сборки пакета выходим из сессии fakeroot:
$ exit
Если всё прошло успешно и без ошибок, то у нас в рабочей папке появился файл вида notepadqq_20170326-1_amd64.deb. Теперь его можно установить, используя нормальный менеджер пакетов:
# dpkg –i notepadqq_20170326-1_amd64.deb
Запускаем Double Commander и подключаем notepadqq в качестве редактора по умолчанию:
Настройка → Редактор → Включить опцию «Использовать внешнюю программу», в качестве пути прописать: notepadqq
Собранная мной версия 1.0.1 зарекомендовала себя очень хорошо и я с ней отработал целый год. Теперь мы умеем правильно собирать пакеты из исходников – это совсем несложно!
Сборка и установка Double Commander
В установленном Double Commander было несколько неприятностей. Он глючил при работе с сетевыми папками и редактировании длинным имён файлов. Кроме этого иногда он криво закрывался из-под суперпользователя. Из репозитория изначально была установлена версия 0.5.х, в то время как на сайте проекта была доступна 0.7.8, которая этими проблемами уже не болела. Попытка получить DEB пакет вывела на ресурс launchpad.net/ubuntu, где предлагалось скачать несколько собранных пакетов версии 0.6.х и установить их в какой-то комбинации. Зачем несколько пакетов? Да и версия совсем не новая. Попытка необдуманно поставить новую версию из Backports привела к падению системы, починить не удалось и я просто удалил виртуальную машину, подтянув заботливо сохранённый резервный файл образа жесткого диска.
Однако какие проблемы могут тут быть, если есть исходный код? Я же теперь могу скомпилировать и собрать пакет самостоятельно! Сначала шло всё как обычно. Получение исходников, разбирательство что там и где и попытки их как-то скомпилировать, не понимая логики своих действий. Потом я всё же сподобился почитать документацию из которой следовало, что для компиляции никакой make не поможет – нужна полноценная IDE, в которой и разрабатывается проект. Ну… а почему бы не поставить IDE? И я резво пошёл по граблям, не предполагая, что этой займет с неделю.
Для работы нам нужно установить уже знакомые пакеты:
# apt-get install make gcc checkinstall subversion
Для нормальной установки IDE (Lazarus) необходимо доставить следующие пакеты:
# apt-get install libdbus-1-dev libglib2.0-dev libncurses5-dev libx11-dev libgtk2.0-dev libcanberra-gtk-module
Очень важное замечание: на странице разработки вики проекта приведён перечень необходимых пакетов, в котором прописан пакет libgtk-2.0-dev, которого на самом деле не существует – вместо него нужно ставить libgtk2.0-dev (без дефиса!).
Теперь нам надо установить саму IDE. Lazarus – это открытая среда разработки программного обеспечения на языке Object Pascal для компилятора Free Pascal. То есть помимо IDE надо ещё и компилятор поставить. Сначала я бодро нашёл и скачал нужные файлы, разумеется последней версии, установил их и долго не мог понять причину почему проект упорно не компилируется. Конечно, учитывая, что я делал всё в первый раз на софте, который до этого в глаза не видел, я допускал феерические ошибки и алогичные действия. Но правда оказалась горька – в совокупности с проблемой лишнего дефиса в libgtk-2.0-dev оказалось, что для Double Commander 0.7.8 рекомендовано использование lazarus 1.6.2, а не 1.6.4, которую я установил.
Для установки среды разработки нужно открыть сайт проекта Lazarus и выбрать Lazarus Linux amd64 DEB или Lazarus Linux i386 DEB в зависимости от архитектуры процессора. После этого выбираем версию IDE (для Double Commander 0.7.8 — 1.6.2) и скачиваем пакеты lazarus-project, fpc, fpc-src.
Устанавливаем пакеты
# dpkg -i fpc_3.0.0-151205_amd64.deb
# dpkg -i fpc-src_3.0.0-151205_amd64.deb
# dpkg -i lazarus-project_1.6.2-1_amd64.deb
После установки запускаем среду разработки, проигнорировав предупреждение о недоступности отладчика:
$ startlazarus
В настройках «Сервис» выбираем пересборку (перекомпиляцию) lazarus (по профилю Normal IDE). IDE должна нормально пересобраться — иначе с ней работать дальше нельзя и надо разбираться почему никогда не было, но вот, случилось опять. Бывали случаи, что проще было взять новую виртуальную машину и сделать всё заново, так как в процессе установки/удаления lazarus где-то что-то не устанавливалось или не удалялось и система необратимо замусоривалась.
После всех разрешенных вопросов с IDE получаем исходный код. Можно получить исходный код с svn (релиза 0.7):
$ svn co svn.code.sf.net/p/doublecmd/code/branches/0.7 doublecmd
Можно получить исходный код текущего проекта с svn:
$ svn co svn.code.sf.net/p/doublecmd/code/trunk doublecmd
Можно просто скачать исходный код с сайта проекта и распаковать файл:
$ tar xzf doublecmd-0.7.8-src.tar.gz
Допустим мы получили папку с исходным кодом и она находится по пути /home/user/work/doublecmd.
Далее нужно скомпилировать проект. Запускаем IDE в сессии fakeroot:
$ fakeroot
$ startlazarus
В соответствии с файлом doublecmddocINSTALL.txt (для актуальной версии уточнить пакеты на странице разработки проекта в разделе «Building from source») нужно подключить или скомпилировать пакеты к lazarus, а после подключения последнего пакета пересобрать lazarus. Делается это следующим образом: следуем в меню Package → Open package file (.lpk) → Выбираем требуемый файл и открываем его → В открывшемся новом окне нажимаем кнопку «Use» после чего выбираем «Install», если пункт «Install» недоступен, то просто нажимаем на кнопку «Compile». Все компоненты находятся в папке components исходного кода. Нам нужно подключить следующие компоненты:
— chsdet/chsdet.lpk
— CmdLine/cmdbox.lpk
— multithreadprocs/multithreadprocslaz.lpk
— dcpcrypt/dcpcrypt.lpk
— doublecmd/doublecmd_common.lpk
— KASToolBar/kascomp.lpk
— gifanim/pkg_gifanim.lpk
— viewer/viewerpackage.lpk
После подключения последнего компонента нужно утвердительно ответить на вопрос о пересборке IDE либо самостоятельно запустить пересборку через меню «Сервис».
Если пересборка успешно завершилась, то можно попробовать откомпилировать проект, открыв через Lazarus файл doublecmd/src/doublecmd.lpi и запустив компиляцию (кнопка F9). После успешной компиляции (в процессе могут показываться предупреждения, но ничего страшного – главное, чтобы фатальных ошибок не было) должен отрыться Double Commander. Если этого не произошло то, с высокой долей вероятности, в процессе компиляции возникла ошибка и надо разбираться что с ней делать и как жить дальше. Можно попытаться решить проблему логически, но при отсутствии опыта шансов, конечно, очень мало. Поэтому нежно забираем текст ошибки в буфер обмена и идём с ней прямо в неведомые дали интернета.
После успешной компиляции проекта закрываем IDE.
Итак, мы получили в папке с исходным кодом бинарный файл doublecmd, который запускается. Всё хорошо, но… а как сделать нормальный пакет? Вот тут нам поможет папочка install. Если вдумчиво понаблюдать за кодом файла create_packages.sh, само название которого сильно обнадёживает, то можно сделать далеко идущие выводы о том, что нам нужно в части параметров, которые нужно прописывать при запуске скрипта. По применению этого скрипта возможно даже есть какая-то документация, но мне хватило логического осмысления кода. Одна просто запуск на исполнение этого файла мне ничего не давал так как процесс постоянно сбоил и останавливался на ошибках, как правило, отсутствия нужных путей. Для успешной сборки пакета нужно немного подправить скрипт create_packages.sh.
Ищем в коде строку и комментируем или удаляем её:
svn export ../ $BUILD_DC_TMP_DIR
Ниже прописываем:
cp -vR /home/user/work/doublecmd/ $BUILD_DC_TMP_DIR
Ищем в коде строку и комментируем или удаляем её:
linux/update-revision.sh ../ $BUILD_DC_TMP_DIR
Если код получен с svn, то эти два изменения можно и не делать, но при скачивании кода отдельным архивом без этих правок сделать пакет не получалось.
Далее ищем строку и опять комментируем/удаляем:
export MAINTAINER=«Alexander Koblov <Alexx2000@mail.ru>»
Вместо неё прописываем себя:
export MAINTAINER=«Vlastelin Mira»
Далее ищем строку и снова комментируем/удаляем:
checkinstall -D —default —pkgname=doublecmd —pkgversion=$DC_VER —pkgarch=$DEB_ARCH —pkgrelease=1.$lcl —pkglicense=GPL —pkggroup=contrib/misc —requires=libx11-6 —nodoc —pakdir=$PACK_DIR $BUILD_DC_TMP_DIR/install/linux/install.sh
Ниже прописываем то же самое, но с небольшим изменением, которое позволит после сборки пакета автоматически не устанавливать его в систему и сохранит собранный пакет:
checkinstall -D —install=no —default —pkgname=doublecmd —pkgversion=$DC_VER —pkgarch=$DEB_ARCH —pkgrelease=1.$lcl —pkglicense=GPL —pkggroup=contrib/misc —requires=libx11-6 —nodoc —pakdir=$PACK_DIR $BUILD_DC_TMP_DIR/install/linux/install.sh
Запускаем генерацию пакета для Debian в сессии fakeroot из которой мы и не выходили:
$ ./create_packages.sh -D —ws=gtk2 —cpu=x86_64
Наблюдаем за магией в консоли – там столько всего происходит! После успешной сборки пакета выходим из сессии fakeroot:
$ exit
Полученный пакет, например, doublecmd_0.7.8-1.gtk2_amd64.deb, будет находиться в /doublecmd/install/linux/release/ откуда его можно установить обычной командой:
# dpkg -i doublecmd_0.7.8-1.gtk2_amd64.deb
Вернуться в начало, к оглавлению.
История создания домашнего облака. Часть 1. Настройка среды Debian для повседневного использования
Версия текста: 1.1.2.
Дата первой публикации: 10.01.2018.
Дата последней правки: 29.12.2021.
Лог обновлений
1.1.2 [29-12-2021]
Правка ссылок оглавления.
1.1.1 [15-01-2020]
Обновление оглавления.
1.1.0 [10-01-2018]
Дополнено название статьи.
1.0.0 [10-01-2018]
Первая версия.
Описывается настройка среды Debian 8.7.x и сборка из исходников пакетов Notepadqq 1.0.1 и Double Commander 0.7.8.
Введение
Debian — один из самых стабильных, популярных и старейших дистрибутивов, чем заслужил доверие многих пользователей, нашел свое применение не только в серверном сегменте, но и на рабочих станциях. Релиз Debian 10 состоялся 6 июля 2019 года, основан на базе ядра Linux версии 4.19, получил кодовое имя Buster. В этой статье расскажем, как пошагово установить операционную систему Debian 10 на выделенный сервер компании Selectel вручную.
Системные требования
Большинство дистрибутивов на основе ядра Linux имеют скромные требования к ресурсам компьютера, Debian — не исключение.
Минимальные системные требования:
ОЗУ: 256 Мб
Жесткий диск: 2 Гб
Рекомендуемые системные требования:
ОЗУ: 512 Мб
Жесткий диск: 2 Гб
Выбор конфигурации обусловлен кругом выполняемых задач, каждый случай индивидуален. Стоит отметить, что выделенные серверы в Selectel с огромным запасом производительности перекрывают требования ОС.
Заказ сервера
Первое, что необходимо сделать, — зарегистрировать аккаунт для работы с информационными системами Selectel, затем войти в панель управления. Для заказа сервера перейти в меню Серверы и оборудование, далее нажать Заказать сервер как показано на рисунке ниже.
Теперь нужно выбрать подходящую под ваши задачи конфигурацию или заказать индивидуальную сборку сервера, если ни одна из предложенных конфигураций не подошла. Когда существует необходимость ручной установки ОС, следует обратить внимание на наличие KVM-доступа к серверу.
В качестве примера выбрана конфигурация DL-10, на следующем шаге требуется выбрать операционную систему, модель потребления трафика, тарифный план, количество серверов данной конфигурации и их локацию. Нет необходимости вручную устанавливать ОС, все автоматизировано, об этом подробнее рассказано ниже, но поскольку в статье рассматривается ручная установка ОС — выбираем No OS boot.
По окончании выбора настроек сервера — нажать Оплатить сейчас.
Сервер будет готов к работе после оплаты, его подготовка занимает около 15 минут.
Варианты установки
В Selectel сделали все, чтобы сделать работу с выделенными серверами максимально комфортной как для новичков, так и для опытных пользователей. Предусмотрено несколько вариантов установки операционной системы на сервер. Ниже рассмотрим каждый из них.
Автоматическая установка при заказе сервера
Есть возможность на этапе заказа сервера определиться с выбором операционной системы, это самый быстрый вариант, подходит большинству пользователей, экономит время. В примере выбран Debian 10.
Автоматическая установка после заказа сервера
Изменить или установить ОС можно в том числе после того, как сервер был заказан, в любое время. Для этого необходимо выбрать нужный сервер, перейти на вкладку Операционная система, нажать Изменить конфигурацию ОС.
Далее выбрать дистрибутив Debian, версия 10, остальные настройки по желанию можно изменить, затем нажать Установить.
На следующем шаге потребуется подтверждение установки операционной системы. В поле ввести название сервера и нажать Установить.
Во время установки ОС меню работы с сервером выглядит следующим образом:
Осталось дождаться окончания процесса установки, и сервер будет готов к работе.
Установка на собственный сервер
Рассматривая вариант установки на собственный сервер, необходимо для начала определить архитектуру процессора. Отталкиваясь от этой информации, скачать образ операционной системы, соответствующий установленному процессору.
Например, для AMD64, netinstall-образ можно скачать отсюда. Теперь необходимо записать образ на флешку при помощи специализированного программного обеспечения, например, Rufus. Подключить флеш-накопитель к серверу, при загрузке вызвать загрузочное меню, либо в BIOS настроить приоритет загрузки устройств.
Подробно описать данную процедуру в рамках статьи не представляется возможным, поскольку настройки могут отличаться в зависимости от производителя сервера. При правильной настройке установка операционной системы должна начаться.
Ручная установка через KVM-консоль
KVM-консоль — инструмент удаленного администрирования, предоставляющий полный доступ к серверу даже без установленной операционной системы. Для перехода в консоль нужно нажать на значок, показанный на картинке ниже.
Через этот инструмент есть возможность установки операционных систем из iso-образов. Установка будет произведена из netinstall-образа:
- открыть Virtual media, выбрать Virtual storage;
- в появившемся окне, поле Logical Drive Type, выбрать значение ISO File;
- нажать Open Image, выбрать папку Debian, из предлагаемых нажать на debian-10.10.0-amd64-netinst.iso, нажать Open;
- нажать Plug in, потом OK;
- перезагрузить сервер.
После загрузки начнется установка из выбранного образа, если по каким-либо причинам процесс инсталляции не запустился, следует обратиться в службу технической поддержки. Описанию процесса установки посвящена следующая глава.
В загрузочном меню необходимо выбрать пункт Install и нажать Enter, процесс установки начнется примерно через 30 секунд и будет происходить в псевдо графическом режиме.
Выбор языка
На этом этапе предлагается выбрать язык, который будет использован в процессе установки операционной системы, он же будет являться языком по умолчанию в установленной ОС. С точки зрения лучшей совместимости с разнообразным ПО, лучше выбрать English, затем нажать Enter.
Выбор страны
Из появившегося списка нужно выбрать страну расположения сервера, в данном случае выбираем other, в следующем меню Europe, затем Russian Federation.
Выбор локали
Локаль — файл с настройками отображения символов, используемых в региональных рамках. Поскольку рассматриваем установку ОС на сервер, рекомендуется выбрать United States en_US.UTF-8.
Выбор раскладки клавиатуры
С учетом выбранных ранее языковых настроек, указываем American English.
Установка сети
Во время установки ОС на удаленный сервер и при наличии нескольких сетевых адаптеров, не всегда однозначно можно определить интерфейс, подключенный к сети. В данном случае необходимо действовать методом перебора.
Начать лучше с карты, подсвеченной установщиком в меню, нажать Enter. Будут происходить попытки получить настройки по протоколу DHCP от маршрутизатора в сети. При появлении сообщения Network autoconfiguration failed нужно нажать подсвеченную Continue. В следующем появившемся меню клавишей Tab перейти на кнопку Go back, нажать Enter и повторить процедуру с другим сетевым адаптером. Если установщик сообщил Network autoconfiguration has succeeded и перешел к следующему этапу — сетевой интерфейс выбран верно.
Имя сервера
Необходимо ввести имя узла для идентификации сервера, нажать Enter. Существует отличная статья о маркировке оборудования в блоге компании, пункт «Как правильно давать названия». На скриншоте указано spb-mail-01. Любой администратор поймет, что это первый почтовый сервер в Санкт-Петербурге. Имя будет храниться в конфигурационном файле /etc/hosts установленной операционной системы.
Имя домена
Если сервер будет работать в домене, нужно ввести его имя. Если домена нет — оставить поле пустым и нажать Enter.
Установка пароля пользователя root
Необходимо задать пароль администратора системы — пользователя root. Общие рекомендации по безопасности:
- пароль должен состоять из прописных и строчных букв, цифр и спецсимволов;
- пароль не может быть пустым;
- пароль не должен быть словарным;
- пароль не должен быть связан с вашей личностью, например, с датой рождения;
- пароль должен содержать не менее 8 символов, больше — лучше.
При вводе пароля вместо символов будут отображаться звездочки, это нормально. После ввода пароля надо нажать Enter. Далее установщик предложит ввести пароль заново, чтобы удостовериться, что введенные дважды пароли совпадают. Следует ввести пароль пользователя root и нажать Enter.
Создание пользователя
С точки зрения безопасности следует работать в системе под учетной записью пользователя, не имеющего привилегий администратора. Этот этап служит для создания профиля обычного пользователя. Если перевести дословно текст с экрана программы-установщика, требуется ввести имя и фамилию. Сюда можно написать что угодно, но важно понимать, что эти данные могут быть видны другим пользователям, например, при отправке электронных писем с этого аккаунта. После ввода данных подтвердить клавишей Enter.
Далее мастер установки требует ввести желаемый логин, используемый при авторизации. Если на предыдущем шаге были введены имя и фамилия, то в качестве логина предлагается использовать имя, оно автоматически подставляется в поле ввода. Значение, предложенное инсталлятором, можно изменить. После нажатия Enter, программа установки переходит к назначению пароля.
Следует ввести пароль для создаваемого пользователя, закончить ввод нажатием клавиши Enter.
По аналогии с вводом пароля для пользователя root необходимо ввести его повторно и нажать Enter.
Настройка часов
На очереди этап настройки часового пояса, система предлагает выбрать из списка, созданного на основе выбора страны, сделанного на втором этапе. Нужно выбрать подходящий с помощью стрелок навигации вверх и вниз и подтвердить нажатием клавиши Enter.
Разметка жесткого диска
Выбрать разметить вручную — Manual и нажать Enter.
Появится список доступных дисков, в примере их два. В данный момент они не имеют каких-либо разделов. Диски абсолютно одинаковы. Рассмотрим создание зеркального массива RAID1. Это позволит увеличить степень надежности хранения данных. При выходе из строя одного из дисков система продолжит функционировать на оставшемся. Уделим внимание также размещению LVM поверх разделов RAID. LVM позволяет гибко работать с разделами жестких дисков, например, изменять размеры разделов, при этом, не останавливая сервер.
Выбрать первый диск из списка, нажать Enter.
Стрелками перейти на Yes, нажать Enter. Будет создана пустая таблица разделов.
Повторить процедуру создания таблицы разделов для второго диска, после чего картина в программе разметки должна быть следующая:
Выбрать строку, начинающуюся с pri/log для первого диска, нажать Enter. Далее Create a new partition.
Будем использовать его как загрузочный раздел /boot, размер вводится вручную, в примере это 1 GB. На нем хранятся настройки загрузчика, ядро операционной системы, системный файл для начальной загрузки initrd.
Следующий шаг — выбрать тип раздела Primary, подтвердить клавишей Enter.
Создается раздел в начале диска, выбрать Beginning.
Перемещение по меню осуществляется стрелками навигации вверх и вниз, нажимая Enter, можно менять значение опций и попадать в другие подменю. Выбрать Use As: physical volume for RAID, Bootable flag: on. По окончании настройки раздела выбрать пункт меню Done setting up partition.
Программа разметки диска вернется в свое основное меню. Для второго диска нужно создать аналогичный раздел.
Затем снова увидим главное меню программы разметки диска. Следующим шагом будет разметка оставшегося свободного пространства на первом носителе. Выбрать строку, начинающуюся с pri/log для первого диска, как показано на картинке ниже, нажать Enter.
Выбрать Create a new partition — создание нового раздела, нажать Enter.
По умолчанию предлагается использовать все оставшееся место — подтверждаем нажатием Enter.
Выбрать Primary и нажать Enter.
Выбрать Use as: physical volume for RAID из соответствующего меню, подтвердить, выбрав Done setting up the partition, затем нажать Enter.
После возвращения в главное меню программы разметки для второго диска создать аналогичный раздел. Затем перейти к настройке программного RAID массива — пункт Configure software RAID, нажать Enter.
Подтвердить запись изменений на диск, выбрать Yes и нажать Enter.
Выбрать Create MD device, нажать Enter.
Выбрать стрелками навигации тип RAID, в данном случае будет использоваться зеркало — RAID1, нажать Enter.
На этом шаге задается количество активных устройств массива, для RAID1 их нужно минимум два. Подтвердить нажатием Enter.
Далее указывается количество запасных устройств, которые при выходе из строя компонентов RAID-массива, встанут им на замену. В данном примере устройства замены не предусмотрены, в поле значение 0, подтвердить клавишей Enter.
Первое устройство RAID1 объединяет в себе два идентичных раздела на разных жестких дисках, это /dev/sda1 и /dev/sdb1. Необходимо выбрать их из меню клавишей Пробел(Space), перемещаясь стрелками навигации вверх и вниз. Пример выбора разделов показан на картинке ниже. Закончить создание первого MD-устройства нажатием Enter.
После чего утилита конфигурации RAID-массива вернется в свое главное меню. Снова выбрать Create MD device и нажать Enter. Повторить аналогичные действия для второго RAID-массива, собрав его из оставшихся доступных разделов /dev/sda2 и /dev/sdb2, как показано на картинке ниже.
По окончанию настройки второго RAID-массива, будет отображено главное меню утилиты работы с RAID, выбрать Finish, нажать Enter.
Из основного меню программы разметки выбрать пункт Configure the Logical Volume Manager, нажать Enter.
Выбрать ответ Yes и подтвердить использование текущей схемы разделов нажатием клавиши Enter.
Выбрать пункт Create volume group для создания пространства, которое будет разбито на отдельные логические тома (Logical Volume), нажать Enter.
Задать имя для группы томов, в данном случае это system, нажать Enter.
Выбрать физические разделы, которые будут входить в группу томов, для данного случая отметить только /dev/md1 устройство клавишей Пробел (Space) и нажать Enter.
Выбрать Yes и подтвердить использование текущей схемы разделов нажатием клавиши Enter.
Выбрать пункт Create logical volume для создания логического тома, который в дальнейшем будет содержать определенную файловую систему, например ext4, т.е. аналог обычного раздела жесткого диска в не-LVM окружении. Нажать кнопку Enter.
Выбрать группу томов, поверх которой создается логический том. В данном случае она единственная, созданная ранее с названием system. Нажать Enter для подтверждения.
Ввести название для создаваемого тома, в примере это root, затем нажать Enter.
Задать размер создаваемого тома и нажать Enter. Поддерживаемые форматы ввода: 10K, 10M, 10G, 10T, где 10 — это размер тома, а следующая за ним буква определяет единицу измерения информации (К — килобайты, М — мегабайты, G — гигабайты, T — терабайты). На скриншоте ниже показано создание раздела размером 10 гигабайт.
Повторить процедуру создания логических томов с именами home, swap и var. Единственным отличием будет размер создаваемых томов, их стоит задавать исходя из выполняемых задач и потребностей. В представленном примере распределение объемов между LVM-томами выглядит следующим образом:
- root — 10 GB,
- swap — 3 GB,
- var — 10 GB,
- home — 215,9 GB (все оставшееся место на разделе).
По окончании создания томов из меню выбрать пункт Finish и нажать Enter.
Теперь необходимо перейти к настройке каждого раздела: указать тип файловой системы и задать точки монтирования. Выбрать первый раздел #1 логического тома home как показано на картинке ниже, нажать Enter.
В следующем меню стрелками навигации выбрать пункт Use as: и нажать Enter. Из предложенного списка выбрать Ext4 journaling file system, подтвердить клавишей Enter.
Перейти к пункту Mount point:, нажать Enter. Выбрать из списка /home — user home directories, нажать Enter.
После окончания настройки данного раздела выбрать пункт меню Done setting up the partition и нажать Enter.
Далее настраиваются по аналогии первые разделы #1 логических томов root и var. В качестве файловой системы для обоих разделов также указать Use as: Ext4 journaling file system, для root точку монтирования Mount point: /, в случае с var — Mount point: /var.
Отдельно рассмотрим настройку раздела подкачки. Для начала нужно выбрать соответствующий пункт в меню, как показано ниже, нажать Enter для перехода к настройке.
Стрелками навигации выбрать пункт Use as: и нажать Enter. Из предложенного списка выбрать swap area, затем нажать Enter.
Настройки раздела подкачки завершена. Выбрать пункт меню Done setting up the partition и нажать Enter.
Осталось настроить загрузочный раздел, его необходимо выбрать из меню, как показано ниже, далее нажать Enter.
В открывшемся меню стрелками навигации выбрать пункт Use as: и нажать Enter. Из предложенного списка выбрать Ext4 journaling file system, затем нажать Enter. Перейти к пункту Mount point:, нажать Enter. Выбрать из списка /boot — static files of the boot loader, нажать Enter. Настройки загрузочного раздела завершена — выбрать пункт меню Done setting up the partition и нажать Enter.
После всех выполненных действий, главное меню программы разметки должно иметь вид:
Нажать Finish partitioning and write changes to disk для внесения изменений в разметку диска.
Появится окно с подтверждением внесения изменений в разметку дисков. Стрелками перейти на Yes, нажать Enter.
Далее начнется инсталляция базовой системы, нужно немного подождать.
Настройка репозитория
Этот шаг предусматривает необходимость ответить на несколько вопросов установщика, связанные с выбором источников пакетов. Система уточняет, существуют ли еще диски для поиска на них программного обеспечения. В рамках установки этого дистрибутива на сервер дополнительных дисков не предусмотрено, нужно ответить No и нажать Enter.
На следующем экране предлагается выбрать страну, в которой находится сервер, по умолчанию выбрана Russian Federation. Поскольку сервер, на который выполняется установка ОС, находится в дата-центре Selectel, где имеется свой репозиторий, лучше всего будет воспользоваться этим зеркалом для максимально быстрой загрузки пакетов. Для этого нужно стрелкой вверх пролистать в самое начало списка и остановиться на пункте enter information manually, нажать Enter.
Ввести вручную адрес mirror.selectel.ru и подтвердить свой выбор клавишей Enter.
Путь до директории менять не нужно, подтвердить кнопкой Enter.
Так как прокси-сервер не используется — поле оставить пустым и нажать Enter.
Начнется процесс получения и установки программных пакетов, для этого требуется определенное время. Далее инсталлятор предлагает принять участие в сборе данных об используемых пакетах в системе. Сведения будут отправляться анонимно каждую неделю в автоматическом режиме. Это поможет разработчикам вести статистику популярных программ и в будущем размещать их на первых дисках дистрибутивов. Следует выбрать Yes для отправки данных, или No для отказа, подтвердить выбор нажатием Enter.
Выбор программного обеспечения
Базовая система установлена, теперь следует выбрать дополнительное программное обеспечения для установки. Для сервера рекомендуется отметить два пункта: SSH server и standard system utilities. Снятие и установка пометок выполняется клавишей Пробел (Space). В завершении нажать Enter.
Получение и установка выбранного набора программ займет какое-то время, необходимо подождать.
Установка загрузчика
Поскольку установка выполняется на чистый сервер — отвечаем Yes на вопрос об установке загрузчика в MBR (Master Boot Record) и нажимаем Enter.
Из списка необходимо выбрать диск, на который будет записан загрузчик GRUB, обычно это первый из списка, выбрать /dev/sda и подтвердить нажатием Enter.
Завершение установки
Установка системы завершена, теперь необходимо извлечь образ установочного диска из виртуального привода. Из меню KVM-консоли выбрать пункт Virtual Media, затем Virtual Storage. В появившемся меню нажать кнопку Plug Out и OK.
Теперь в меню программы установки можно нажать Enter.
Сервер будет перезапущен, после чего загружена установленная операционная система. Появление на экране приглашения авторизации означает, что ОС Debian загрузилась и готова к работе:
Debian GNU/Linux 10 spb-mail-01 tty1
spb-mail-01 login:
Теперь необходимо авторизоваться пользователем root для минимальной первоначальной настройки ОС.
Настройка Debian 10 после установки
После установки операционной системы на сервер она уже готова к использованию, однако рекомендуется выполнить несколько простых шагов для повышения безопасности и удобства работы.
Настройка сети
Настройки сетевых адаптеров в Debian 10 Buster расположены в файле /etc/network/interfaces. В большинстве случаев в сетях работает DHCP-сервер и настройки на сетевой карте появляются автоматически при загрузке системы, тогда конфигурационный файл имеет вид:
auto enp1s0f0
iface enp1s0f0 inet dhcp
Здесь опция auto указывает на автоматический запуск указанного сетевого адаптера при загрузке системы, опция iface задает имя интерфейса, dhcp — получение настроек с DHCP-сервера.
Теперь необходимо задать настройки сети, такие как статический IP-адрес, маску подсети и шлюз, для того чтобы сервер имел доступ в интернет и одновременно был доступен снаружи. Настройки для доступа в глобальную сеть находятся в панели управления, в карточке сервера, на вкладке Сеть надо нажать на ссылку, указанную стрелкой на картинке, для получения подробных параметров.
Откроется окно, показанное ниже, стрелками показаны параметры, которые необходимо внести в конфигурационный файл.
Открыть файл конфигурации настроек сети:
nano /etc/network/interfaces
Добавить следующие строки в конец файла:
auto enp1s0f0:0
iface enp1s0f0:0 inet static
address 94.26.227.135
netmask 255.255.255.0
gateway 94.26.227.1
Для сохранения изменений нажать Ctrl+O, после Enter для подтверждения, затем Ctrl+X для выхода из текстового редактора.
Внимание! Настройки взяты для примера, у каждого они свои.
Здесь static означает, что данный интерфейс имеет статичный адрес, опция address задает IP-адрес, netmask устанавливает маску для подсети, gateway — шлюз.
При необходимости можно отредактировать список используемых DNS-серверов, файл конфигурации находится по следующему пути:
/etc/resolv.conf
Пример его содержимого:
nameserver 188.93.16.19
nameserver 188.93.17.19
Опция nameserver определяет использование указанного после нее DNS-сервера, таких строк может быть несколько. Для большинства задач редактировать этот файл не требуется.
После любых изменений необходимо выполнить перезапуск сетевой подсистемы:
service networking restart
Получить информацию о текущих настройках сетевых интерфейсов можно командой:
ip a
Как итог, на имеющийся интерфейс enp1s0f0, помимо приходящих автоматически настроек, был добавлен еще один IP-адрес для доступа в интернет. Сеть настроена.
Обновление системы
Из подключенных репозиториев необходимо обновить информацию о доступных пакетах:
apt-get update
Произвести обновление всех установленных пакетов и их зависимостей:
apt-get -y dist-upgrade
Установка sudo
Утилита sudo позволяет выполнять команды от имени другого пользователя, например, от root, с целью повышения привилегий в системе. Установка:
apt-get install sudo
Добавить пользователя в группу sudo:
usermod -aG sudo aleksandr
Вместо aleksandr нужно указать имя своего пользователя. Если пользователь, которого добавили в группу sudo, сейчас авторизирован в системе, необходимо выйти и снова войти в систему для вступления в силу изменений.
Настройка SSH сервера
SSH — безопасный сетевой протокол, широко применяемый для обеспечения удаленного доступа к различному оборудованию. Сервер SSH был установлен вместе с системой, поэтому его осталось только настроить. Открываем конфигурационный файл:
nano /etc/ssh/sshd_config
Первое, что рекомендуется сделать, это изменить порт, на котором работает сервер. В файле нужно найти строку #Port 22, привести ее к следующему виду:
Port 22200
Сервер будет работать на порту 22200. Номер порта можно выбрать другой, важно чтобы он не был занят какой-либо службой или приложением. Следует обратить внимание, что в начале строки обязательно нужно убрать символ комментария #, иначе параметр будет проигнорирован.
Теперь необходимо запретить вход пользователя root. Это повысит безопасность системы, поскольку это стандартная учетная запись суперпользователя. Если пароль станет известен злоумышленнику, войти не удастся. Ищем строку PermitRootLogin, если она имеет в начале символ комментария #, его следует удалить. Строка должна иметь следующий вид:
PermitRootLogin no
Работа над файлом конфигурации закончена, нажимаем сочетание клавиш Ctrl+O, внизу экрана появится сообщение File Name to Write: /etc/ssh/sshd_config, нажимаем Enter для сохранения изменений, потом Ctrl+X, чтобы выйти из редактора. Выполнить перезапуск SSH сервера для вступления в силу изменений:
service sshd restart
Установка FTP-сервера
FTP — протокол для передачи файлов по сети, имеет клиент-серверную архитектуру. На практике часто применяется для обеспечения доступа к домашним папкам пользователей, к директориям с сайтами на веб серверах, для обеспечения резервного копирования. Установка сервера:
apt-get -y install proftpd
Сразу после установки, служба proftpd запуститься, и будет добавлена в автозагрузку. По умолчанию при подключении к серверу требуется ввести свой логин и пароль, после чего будет отображено содержимое домашней директории. Данный сервер имеет множество различных настроек, которые задаются в главном конфигурационном файле /etc/proftpd/proftpd.conf, откроем его:
nano /etc/proftpd/proftpd.conf
Необходимо добавить поддержку пассивного режима работы FTP-сервера для корректной работы за брандмауэром. Нужно найти строку #PassivePorts и раскомментировать ее, убрав знак # в начале строки, в результате должно получиться:
PassivePorts 49152 65534
Нажать сочетание клавиш Ctrl+O, внизу экрана появится сообщение File Name to Write: /etc/proftpd/proftpd.conf, нажатием Enter сохранить изменения, затем Ctrl+X, чтобы выйти из редактора. Выполнить перезапуск FTP-сервера:
service proftpd restart
На этом работа с FTP-сервером в рамках статьи закончена.
Настройка iptables
Обеспечим базовую безопасность сервера с помощью встроенного брандмауэра. Предположим, что на рассматриваемой в качестве примера машине, уже имеются веб-сервер, FTP-сервер, SSH-сервер на порту 22200. Описанные ниже действия, производятся под учетной записью суперпользователя root.
Создаем файл списка правил iptables и даем право на выполнение:
touch /etc/iptables.server
chmod +x /etc/iptables.server
Открываем текстовым редактором nano:
nano /etc/iptables.server
Скопировать любым удобным способом эти строки в открытый файл:
#!/bin/bash
# Объявление переменных
export IPT="iptables"
# Очистка всех цепочек и удаление правил
$IPT -F
$IPT -F -t nat
$IPT -F -t mangle
$IPT -X
$IPT -t nat -X
$IPT -t mangle -X
# Разрешить входящий трафик к интерфейсу локальной петли,
# это необходимо для корректной работы некоторых сервисов
$IPT -A INPUT -i lo -j ACCEPT
# Позволяем два, наиболее безопасных типа пинга
$IPT -A INPUT -p icmp --icmp-type 0 -j ACCEPT
$IPT -A INPUT -p icmp --icmp-type 8 -j ACCEPT
# Разрешить входящие соединения, которые были разрешены в рамках других соединений
$IPT -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
# Разрешить доступ к SSH-серверу
$IPT -A INPUT -p tcp --dport 22200 -j ACCEPT
# Разрешить доступ к FTP-серверу
$IPT -A INPUT -p tcp --dport 21 -j ACCEPT
$IPT -A INPUT -p tcp -m tcp --dport 49152:65534 -j ACCEPT
# Разрешить доступ к веб-серверу
$IPT -A INPUT -p tcp -m multiport --dports 80,443 -j ACCEPT
# Устанавливаем политики по умолчанию:
# Входящий трафик — сбрасывать; Проходящий трафик — сбрасывать; Исходящий — разрешать
$IPT -P INPUT DROP
$IPT -P FORWARD DROP
$IPT -P OUTPUT ACCEPT
Сохранить файл сочетанием нажатий клавиш Ctrl+O, нажать Enter для подтверждения, затем Ctrl+X для выхода.
Применить подготовленные правила:
/etc/iptables.server
Чтобы правила iptables не потерялись после перезагрузки, нужно воспользоваться специальным пакетом, для начала установив его:
apt-get install iptables-persistent
Во время установки на оба вопроса ответить Yes.
Сохранить действующие правила:
service netfilter-persistent save
Базовая настройка брандмауэра выполнена.
Последние штрихи
Поскольку в процессе инсталляции ОС, на этапе выбора диска, для установки загрузчика был выбран /dev/sda, загрузчик следует установить и на второй жесткий диск:
grub-install /dev/sdb
Когда первый диск выйдет из строя — система загрузится со второго.
Заключение
В рамках данной статьи описана установка базовой системы Debian 10 Buster на сервер, предоставляемый в аренду компанией Selectel, выполнена установка и настройка программного обеспечения, необходимого для взаимодействия с сервером на начальном этапе.
При установке чистой операционной системы Debian 11 необходимо сделать несколько несложных шагов по её настройке, которые являются частью базовой конфигурации виртуального сервера. Эти настройки позволят повысить уровень безопасности вашего VPS и дадут вам твёрдую основу для дальнейших с ним манипуляций.
Далее мы изучим, как авторизоваться на сервере пользователем root, создать новую учётную запись с полномочиями суперпользователя, а также произвести начальные настройки брандмауэра.
Подключение к серверу пользователем root
Для первого подключения к виртуальному серверу вам нужно знать его IP-адрес. Также вы должны знать пароль для учётной записи root. Эти данные вы можете увидеть в личном кабинете вашего VPS.
Непосредственно подключение к VPS осуществляется из командной строки следующей инструкцией:
ssh root@194.87.214.253
В данном примере:
root
– имя учётной записи, под именем которой производится подключение;194.87.214.253
– IP-адрес сервера.
При первом подключении система может выдать вам предупреждение о подлинности хоста. Чтобы принять данное предупреждение, наберите yes
.
Пользователь root
– это административная учётная запись в среде Linux, имеющая очень широкие полномочия. Из-за того, что данный пользователь владеет такими повышенными привилегиями, крайне нежелательно использовать его на регулярной основе. Связано это с тем, учётная запись root
может быть применена для внесения в вашу систему деструктивных изменений вплоть до потери работоспособности.
На следующем этапе первоначальной настройки сервера мы создадим альтернативного пользователя с полномочиями меньшего уровня. Такую учётную запись можно будет более безопасно использовать в повседневной работе.
Создание нового пользователя
После того, как вы зарегистрировались в системе с помощью пользователя root
, необходимо создать новую учётную запись, которую вы будете использовать далее.
Для создания нового пользователя наберите следующую команду:
# adduser new-user
Здесь new-user
– имя новой учётной записи, в качестве которого вы можете выбрать какое-либо своё. При создании нового пользователя система попросит сначала дважды ввести пароля для этой учётной записи. После этого нужно будет ответить на несколько вопросов, которые будет задавать система. Что-либо вводить при этом необязательно, можно просто нажимать Enter
.
Предоставление привилегий администратора
Теперь, когда мы создали новую учётную запись, необходимо наделить её администраторскими полномочиями, чтобы выполнять задачи, требующие их наличия. Выполнение инструкции от имени суперпользователя производится при помощи команды sudo
. Для того, чтобы наш новый пользователь мог запускать команду sudo
, его необходимо добавить в соответствующую группу.
# usermod -aG sudo new-user
Теперь вы сможете выполнять команды от имени учётной записи root
, зарегистрировавшись при этом в системе под вашим новым пользователем. Но сначала вы должны проинсталлировать sudo
на свой VPS обновив списки пакетов:
# apt update
# apt install sudo
На практике применение данной команды выглядит как добавление слова sudo
перед исполняемой инструкцией:
$ sudo your_executable_command
Базовая настройка брандмауэра
В операционных системах семейства Debian используется межсетевой экран, разрешающий определённые подключения к серверу. Такой брандмауэр называется Uncomplicated Firewall (UFW). С его помощью вы сможете произвести настройки политики безопасности, а также, управлять её исключениями.
Установка брандмауэра производится следующей командой:
$ sudo apt install ufw
После завершения инсталляции у вас появится возможность управлять наборами правил межсетевого экрана для установленных приложений. Для большинства распространённых программ профили по умолчанию поставляются в комплекте с UFW. Дополнительные профили можно регистрировать в брандмауэре в процессе дальнейшей настройки.
Список всех доступных профилей приложений доступен по команде:
$ sudo ufw app list
Чтобы разрешить подключения к вашему серверу по SSH, запустите на выполнение следующую команду:
$ sudo ufw allow OpenSSH
Активация межсетевого экрана производится при помощи команды:
$ sudo ufw enable
Чтобы увидеть текущее состояние брандмауэра, наберите:
$ sudo ufw status
Вывод данной команды говорит нам о том, что межсетевой экран блокирует все соединения с сервером кроме SSH.
Настроить брандмауэр можно таким образом, чтобы это соответствовало вашим требованиям. Например, вы можете разрешить доступ к VPS только с хостов со строго определёнными IP-адресами:
$ sudo ufw allow from XXX.XXX.XXX.XXX
Таким же образом можно ограничить доступ к серверу какой-либо определённой подсетью:
$ sudo ufw allow from XXX.XXX.XXX.0/24
Плюс ко всему у вас есть возможность разрешить подключения только к строго определённому порту. Например, использование следующей команды открывает доступ к серверу только для подключений по SSH, где используется порт 22.
$ sudo ufw allow from XXX.XXX.XXX.XXX to any port 22
Авторизация с использованием SSH-ключей
Чтобы повысить уровень безопасности вашего виртуального сервера, можно настроить на нём авторизацию при помощи SSH-ключей.
Для этого сначала необходимо создать SSH-ключ. На вашей рабочей станции, с которой вы подключаетесь к серверу, в командной строке наберите:
ssh-keygen
Данная команда как раз и генерирует SSH-ключ. При генерации ключа вы можете изменить или оставить по умолчанию имя файла ключа и его расположение. Также необходимо будет дважды набрать парольную фразу, если она нужна. В случае, если вы хотите подключаться к серверу без использования каких-либо паролей, вместо ввода парольной фразы просто нажимайте Enter
.
В результате на вашей рабочей станции появятся два файла: публичный ключ сервера id_rsa.pub
и ваш приватный ключ id_rsa
.
После этого подключитесь к вашему VPS и перейдите в домашнюю директорию:
$ cd ~
Там создайте каталог .ssh
:
$ mkdir .ssh
Созданному каталогу назначьте необходимые права:
$ chmod 700 .ssh/
Далее, перейдите в директорию .ssh
и создайте в ней файл authorized_keys
. Данному файлу назначьте права 600
:
$ cd .ssh
$ touch authorized_keys
$ chmod 600 authorized_keys
После чего откройте его для редактирования:
$ nano authorized_keys
В этот файл необходимо скопировать содержимое файла id_rsa.pub
с вашей локальной рабочей станции. При этом не следует копировать пробелы, расположенные после последнего символа. После чего закройте файл authorized_keys
с сохранением внесённых изменений.
Результатом произведённых настроек должна стать возможность подключаться к вашему VPS без использования пароля учётной записи.
Чтобы совсем закрыть доступ к серверу для авторизации с использованием паролей, отредактируйте файл /etc/ssh/sshd_config:
$ cd /etc/ssh/
$ sudo nano sshd_config
В этом файле следует раскомментировать строку PasswordAuthentication
и установить её значение в no
. После чего перезапустите службу SSH:
$ sudo service ssh restart
Установка Debian | |
Обновление дистрибутива | |
Установка программ | |
Java | |
Начало работы | |
Настройка времени и даты | |
Архивы | |
Структура (что где лежит) | |
Графическая оболочка и программы в ней | |
Xfce4 | |
Wi-fi | |
SSH | |
FTP | |
Смена кодировки | |
Пользователи — администрирование | |
Shell (Командная оболочка) | |
Железо | |
Монтирование дисков | |
Монтирование с правами доступа | |
Автоматическое монтирование | |
Mplayer | |
Завершение работы | |
Статьи про Debian |
Мой дневник пользователя Debian, в котором я методом проб, ошибок и консультаций
с товарищами решаю проблемы по мере поступления можно почитать
здесь
Установка Debian
Предположим, что ваша ОС до установки Debian это
Windows
Перед установкой Debian нужно предварительно
переразделить жесткий диск
.
Существует несколько программ, которые легко сделают это из-под винды:
частично бесплатная
Easeus
, платные, но более известные Acronis Disk Director или Partition Magic.
Они могут создавать разделы видимые как из-под Windows, так и из-под Linux.
Для начала нужно создать логический диск
в дополнение к тому, на котором установлена Windows.
Указанные выше программы в состоянии отделить кусок
незанятого пространства с Вашего системного диска. Например, если у вас изначально есть
только Диск C: — нужно создать Диск D:
Далее считаю, что чистый диск нужного размера у вас уже создан.
На этом диске создаем три раздела:
Номер № раздела |
Условное название | Размер |
---|---|---|
Цель создания | Файловая система | |
1 |
Файл подкачки |
Размер
рекомендуют делать вдвое больше чем ваша оперативная память |
Вторичное хранилище для хранения неактивных фрагментов из ОЗУ |
SWAP |
|
2 | Debian | Гигов 10-20. Не мелочитесь |
Раздел непосредственно в котором и будет установлена Debian |
Файловая система обычно одна из:
ext4 ext3 ext2 ReiserFS Reiser4 Труъ-Линуксоиды могут устроить срач и холивар на тему какая лучше, но обычным пользователям не |
|
3 | Общий раздел | Всё оставшееся место на диске |
Раздел для хранения информации которая будет доступна и из-под Windows из-под Debian | Файловая система FAT32. Будет видна из обеих ОС изначально. или NTFS. Возможно потребуется установить для неё драйвер. |
После того как разделы готовы, нужен дистрибутив Debian.
Важно сразу же правильно выбрать архитектуру:
- amd64 — для 64-х разрядной система
- i386 — для 32-х разрядной
Есть различные типы дистрибутивов, я обычно использую netinstall
отсюда
netinstall подходит тем, кто хочет установить базовую систему, и потом
добавлять нужные пакеты самостоятельно
Если вы хотите установить всё сразу — тогда скачайте DVD образ
отсюда
Ещё один способ, который мне очень понравился — установка с
сайта
При установке для диска который вы выделите под саму
Debian нужно будет выбрать точку монтирования /
Аналог администратора в Windows это пользователь root в Debian.
Сделайте пароль посложнее (например QWERTY) чтобы
хакеры не начали захват вашего будущего сервера (прецедент был☺).
N.B. Если у вас 2 и больше сетевых карт, Debian предложит сконфигурировать одну
из них при установке.
Если вы знаете, к
которой в данный момент подключен сетевой шнур — конфигурируйте её.
Советую обратить внимание на все предложенные названия.
Подробности читайте в статье
«Настройка сети в Linux»
Установка программ
Самый простой способ установки — из репозитория.
Загрузкой обновлений и прочих радостей руководит т.н. пакетный менеджер
APT.
(команды выглядят как apt-get и aptitude, они чем-то отличаются)
Файл со списком адресов, откуда apt-get может качать обновления лежит в директории
/etc/apt/
И называется
sources.list
wiki
Открыть файл можно минимум двумя способами:
Перейти в директорию /etc/apt/
cd /etc/apt
Чтобы открыть файл
vi sources.list
Либо сразу использовать
vi
, указав полный путь до файла
vi /etc/apt/sources.list
nano это текстовый редактор некий аналог блокнота в винде.
Установить программу из репозитория
apt-get install имя_программы
Удалить
apt-get remove имя_программы
Вместо remove можно использовать purge — это более сильное удаление.
Если из репозитория установить не получается есть два пути:
добавить нужный адрес в
sources.list
или скачать программу из интернета. При скачивании также возможны варианты:
Если скачан .deb пакет, нужно перейти в директорию с ним (или дописать её в команду)
dpkg -i имя_пакета.deb
apt-get install имя_пакета
Установка из исходников
Подробно
здесь
— советую изучить этот вопрос, чтобы потом не мучаться.
Коротко: если скачаны исходники нужно поместить их в папку /usr/src
перейти в папку с исходниками и набрать
./configure
make
make install
Пользоваться make install лучше уже имея опыт в Linux
Если у вас уже установлено
графическое окружение
(оно же иксы, оно же GUI), не лишним будет иметь
в виду, что существует как минимум два набора библиотек Qt — для
KDE
и
GTK
— для Gnome, Xfce4 и др.
Поэтому при выборе программы, которую вы хотите установить — поинтересуйтесь
(например, зайдите на
её официальный сайт, или страницу в wikipedia) на основе какой библиотеки эта
программа создана — проще говоря с каким окружение ей будет проще работать.
Пример: я поставил Xfce4, а к нему Ktorrent —
это нелогично, обычно ставят Transmission, в качестве видеопроигрывателя я
выбрал xine (apt-get install
gxine) — это правильно.
Также стоит иметь в виду, что разные программы могут требовать для своей
установки некоторых предварительных действий, желательно перед
установкой сделать поисковый запрос «как установить Имя_Программы Версия_Debian»
При установке программ из исходников часто требуется предварительная установка
gcc
и linux-headers
apt-get install linux-$(uname -r)
apt-get install gcc
Из-под графической оболочки можно запустить synaptic и устанавливать пакеты оттуда.
Можно устанавливать программы «вручную». Например, скачать skype с сайта выполнить
dpkg -i skype
Скорее всего появится сообщение о неразрешённых зависимостях со списком пакетов.
Нужно через поисковик
найти эти пакеты на сайте debian.org скачать и снова выполнить dpkg -i могут появиться новые неразрешённые
зависимости, так что процесс может затянуться, но иногда он работает.
При обновлении пакетного менеджера, т.е. после команды
apt-get update
Может появиться ошибка
W: GPG error: http://dl.google.com stable Release: The following signatures couldn’t
be verified because the public key is not available: NO_PUBKEY A040830F7FAC5991
Добавить publickey можно следующим способом
sudo apt-key adv —recv-keys —keyserver keyserver.ubuntu.com A040830F7FAC5991
Если появляется ошибка
E: Could not get lock /var/lib/dpkg/lock — open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
Значит запущен другой пакетный менеджер, например, synaptic. Нужно его закрыть.
Установка Java
Java много где нужна. Например без java не установится
SOAP UI
apt-get install default-jre
Начало работы
После установки система должна перезагрузиться. За загрузку отвечает
Grub2
про него стоит прочитать отдельно. Но если всё работает с этим можно повременить.
После перезагрузки вы попадаете в так называемую оболочку — shell.
Самая популярная оболочка — это
bash
Нужно изучить основные команды cd, ls, mkdir, mount … это можно сделать в статье
«Основы bash»
В учебниках и пособиях есть правило: если перед командой стоит # то она от root если @ то от простого пользователя.
Оталкиваюсь от того, что всё установлено по-минимуму и вы видите чёрный экран где написано что-то вроде
root@Name:~#
Выполните команду
cd /
Нажмите Enter и напишите
ls
Вы увидите список папок, которые лежат в корневой директории. Корневая папка обозначается как
/
Если установка были из netinstall образа, то Debian почти голый. К нему нужно добавлять из интернета различные дополнения
так называемые пакеты и программы.
Возможная проблема на данном этапе — отсутствие интернета. Например, при установке есть риск
указать не тот сетевой интефейс выбор обычно между
eth0 и eth1
Можно настроить
/etc/network/interfaces
allow-hotplug eth0
iface eth0 inet dhcp
address 192.168.0.107
netmask 255.255.255.0
gateway 192.168.0.1
После редактирования обновите сетевое подключение
/etc/init.d/networking restart
Если не помогло — попробуйте выбрать при загрузке другую сетевую карту eth1 вместо eth0
Если интернет работает — советую первым делом сделать
aptitude update
aptitude upgrade
И тоже самое с apt-get. Теоретически это должно помочь обновить пакетные менеджеры. Я как шаман с бубнами делаю
это регулярно. При апгрейде всей системы нужно будет снова выбрать языки и прочее
Чтобы узнать версию ядра нужно набрать
uname -a
Моё ядро debian 2.6.32-5 Его как раз и нужно было обновить.
На всякий случай советую добавить в
/etc/apt/source.list
deb http://ftp.ru.debian.org/debian/ squeeze main contrib non-free
deb http://ftp.ru.debian.org/debian/ testing main contrib non-free
Возможно для работы вам пригодиться Midnight Commander
apt-get install mc
И архиваторы
apt-get install zip unzip p7zip bzip2
Можно попробовать сделать русский язык в консоли (если его нет)
apt-get install console-cyrillic console-terminus
Если компьютер зависнет. Для перезагрузки можно воспользоваться сочетанием клавиш
при нажатом Alt + PrtScr последовательно нажать
R E I S U B
Звуком в Debian заведует alsamixer
aptitude install alsa-utils alsa-base alsa-tools
Что-то должно скачаться установиться.
Введите команду
alsamixer
Там будет несколько столбиков. Иногда проблемы со звуком решаются увеличением высоты столбцов (стрелками вверх).
Иногда нужно заменять нули под столбцами буквами М и наоборот.
Графическая оболочка
Установка графической оболочки (иксов) на примере gdm3:
apt-get install
gdm3
При запуске графического интерфейса можно совершать выбор оболочки с помощью клавиши
F1
Попасть в графическую оболочку (иксы) в первый раз:
startx
Выбирайте «Использовать настройки по умолчанию»
Вернуться обратно в консоль:
Ctrl + Alt + F1
Выйти из консоли в иксы:
Alt + F7
Перезапустить X-server можно командой
/etc/init.d/
gdm3
restart
Выключения иксов
/etc/init.d/
gdm3 stop
Включить икс-сервер
/etc/init.d/
gdm3
start
Установка полезных обычному пользователю программ:
Браузер iceweasel.
Предварительно советую прописать в
/etc/apt/sources.list
строку
deb http://mozilla.debian.net/ squeeze-backports iceweasel-release
Собственно сам браузер:
apt-get install iceweasel
ktorrent обычно в архиве .tar.bz2 , он распаковывается с помощью:
tar -xvjf
Когда имеем файл с расширением .deb
dpkg -i
apt-get install ktorrent
При установке может вылезти сообщение от разработчиков — нажимаем q
Ещё один момент, который является полной неожиданностью для новичков —
необходимость т.н. монтирования дисков.
В
Windows
обычно все диски видны сразу (ключевое слово — обычно).
Для того чтобы получить доступ ко всем
логическим дискам, за исключением системного нужно указать системе к
какой папке этот диск нужно прикрепить.
Т.е. написать (под root)
fdisk -l
Появится список ваших дисков и если вам понятно какой хотите использовать ввести нужно что-то похожее на
mount /dev/sda5 /mnt/w7free
Так я прикрепляю диск sda5 с файловой системой
NTFS
(напоминаю, что он шел под номером «3)» в списке выше)
Подробнее этот процесс описан здесь
Чтобы обрабатывать изображения и делать скриншоты нужно установить программу
Gimp
apt-get install the gimp
Ещё одна возможная проблема — неправильная установка времени. Поменять часовой пояс можно с помощью команды
dpkg-reconfigure tzdata
Настройка времени и даты
Временная зона под Debian устанавливается через символическую ссылку.
Файл
/etc/localtime
должен смотреть на файл настройки временной зоны в директорию
/usr/share/zoneinfo
чем указывается в какой временной зоне вы находитесь.
Например: я живу в России (время Московское) я должен сделать ссылку
/etc/localtime
на файл
/usr/lib/zoneinfo/Europe/Moscow
Для этого нужна команда:
rm -f /etc/localtime
ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
Чтобы узнать какие временные зоны доступны — посмотрите их в директории
/usr/share/zoneinfo:
cd /usr/share/zoneinfo
ls
И выберите более подходящую для Вас…
Если же время установилось не правильное, значит у Вас стоит неправильное время в BIOS.
Для проверки время в BIOS, воспользуемся командой:
hwclock
2021-09-08 11:25:17.289911+02:00
Теперь мы знаем какое время установлено в BIOS, но нам надо его исправить.
Правим время в системе:
date MMDDhhmmCCYY.ss
Описание параметров команды date:
MM — две цифры текущего месяца (пример: январь=01);
DD — две цифры текущей даты (если текущий календарный день 1, то пишется 01);
hh — две цифры обозначающие час;
mm — две цифры обозначающие минуты;
CCYY — четыре цифры года;
ss — две цифры секунд.
Также можно вводить «date MMDDhhmmCCYY»
без секунд, тогда секунды выставляются на ноль.
Ну и теперь вносим новое установленное время в БИОС:
hwclock —systohc
Архивы
Пример: добавить все .jpg файлы из директории в архив
tar czf archive.tar.gz *.jpg
tar.gz
tar xvzf имя_архива.tar.gz
tar.bz2
tar xvjf имя_архива.tar.bz2
Чтобы распаковать архив в определённую директорию воспользуйтесь опцией
-C или опцией —directory
tar -xf archive.tar -C /target/directory
tar -xf archive.tar.gz —directory /target/directory
apt-get install unrar
затем
unrar имя_архива.rar
apt-get install unzip
затем
unzip имя_архива.zip
Если эти способы не помогли можно попробовать поставить p7zip. Под иксами можно поставить peazip. В крайнем случае, можно
воспользоваться on-line архиваторами, например
wobzip
Смена кодировки
Предположим у вас есть файл
файл.html
в неправильной кодировке.
Менять кодировку файлов можно следующим способом:
cat файл.html | iconv -f cp1251 -t utf-8 > новый.html
В одну сторону. Потом открываем, редактируем, закрываем.
cat новый.html | iconv -f utf-8 -t cp1251 > файл.html
Как вариант можно использовать
convmv
Если у вас возникли проблемы с кодировкой на сайте
советую прочитать статью
«Сайт в неверной кодировке»
Настройка xfce4
Чтобы жить стало немного веселее можно сделать пару манипуляций с панелью. Заходим в
Настройки → Панель → Элементы
и добавляем то, что нужно. Можно поменять часы на часы с датой. Добавить регулятор громкости.
Чтобы добавить уровень заряда батареи для ноутбука и апплет раскладки клавиатуры нужно скачать апплет из репозитария:
apt-get install xfce4-battery-plugin
apt-get install xfce4-xkb-plugin
Чтобы увеличить шрифт в эмуляторе терминала xfce4 нужно нажать Ctrl и удерживая его сделать клик правой кнопкой
мыши на терминале — появится интуитивно понятное меню.
Перезапустить
X-server
(предварительно уйдя в консоль Ctrl + Atl + F1) можно командой
/etc/init.d/gdm restart
или
/etc/init.d/gdm3 restart
или
/etc/init.d/kdm restart
Для выключения нужно писать не restart а stop, для запуска start
Клавиатура
Раскладка и другие настройки клавиатуры лежат в файле
/etc/default/keyboard
Инструкция по добавлению языка
здесь
Пользователи
Чтобы создать пользователя user1 нужно ввести команду
adduser user1
Если Вы получили сообщение
bash: adduser: command not found
прочитайте решение
здесь
Если этот пользователь вам надоест его можно удалить командой
deluser user1
Если вы забудете пароль пользователя, то из-под root его можно будет поменять командой
passwd user1
Список пользователей лежит в файле /etc/passwd чтобы его открыть вводим
cat /etc/passwd
Узнать в каких группах состоит пользователь user1
groups user1
Добавить пользователя user1 в группу group1
usermod -G group1 user1
Добавить пользователя sinij и в группу group1 и в группу bks_fans
usermod -G group1,bks_fans sinij
Изменить основную группу пользователя user1 на group2
(по умолчанию обычно группа называется так же как пользователь)
usermod -g group2 user1
Узнать список всех групп
cat /etc/group
Чтобы получить не весь список, а только обычные пользовательские группы
cat /etc/group | grep 1[0-9][0-9][0-9]
Про grep и другие команды можно прочитать
здесь
Поменять группу к которой принадлежит директория
/home/movies на users
chgrp -R users /home/movies
Подключение по SSH
Для того, чтобы обмениваться информацией с другими компьютерами можно использовать соединение по протоколу
ssh. Преположим, что вы хотите с ноутбука подключиться к стационарному ПК.
Нужно создать на ПК нового пользователя, назовем его sinij
adduser sinij
Придумываем пароль посложнее, например,
QWERTY 9dkjvA!#4jdLs
Теперь нужно установить ssh на обоих компах — если его ещё нет
apt-get install ssh
Проверить — работает ли ssh
service ssh status
Остановить / запустить / перезапустить ssh
/etc/init.d/ssh stop
/etc/init.d/ssh start
/etc/init.d/ssh restart
Узнаем ip стационарного ПК (ip_ПК) с помощью
ifconfig
Если ifconfig выдаёт ошибку
ifconfig command not found debian
можно либо воспользоваться командой
ip addresses
Либо установить ifconfig
Чтобы подключиться к ПК на ноутбуке вводим в терминал
ssh sinij@ip_ПК
Если подключиться удалось, то можно начинать перемещаться по папкам удаленного ПК.
Чтобы отключиться от соединения нужно набрать что-то из списка:
exit
logout
ctrl + D
Чтобы вносить изменения в параметры подключения нужно редактировать файл
/etc/ssh/sshd_config
— на сервере и
/etc/ssh/ssh_config
/etc/ssh/sshd_config
желательно изменить порт по умолчанию на любой свободный
#Port 22
Port 2222
Логиниться по паролю, можно, если в /etc/ssh/sshd_config
раскомментирована строчка
PasswordAuthentication yes
это менее безопасный способ, чем логин по ключу, поэтому обычно вместо
yes указывают no
Редактируем файл
/home/username/.bashrc
# ~/.bashrc: executed by bash(1) for non-login shells.
# Note: PS1 and umask are already set in /etc/profile. You should not
# need this unless you want different defaults for root.
PS1=’${debian_chroot:+($debian_chroot)}h:w$ ‘
# umask 022
# You may uncomment the following lines if you want `ls’ to be colorized:
# export LS_OPTIONS=’—color=auto’
# eval «`dircolors`»
# alias ls=’ls $LS_OPTIONS’
# alias ll=’ls $LS_OPTIONS -l’
# alias l=’ls $LS_OPTIONS -lA’
#
# Some more alias to avoid making mistakes:
# alias rm=’rm -i’
# alias cp=’cp -i’
# alias mv=’mv -i’
alias ll=’ls -laF’
alias ec=’nano /root/.bashrc’
alias es=’nano /etc/ssh/sshd_config’
alias eg=’nano /etc/group’
alias ep=’nano /etc/passwd’
alias ea=’nano /var/log/auth.log’
alias ps=’ps -ax|grep ss’
alias ss=’/usr/sbin/ssh’
Wi-fi
Сперва можно попробовать
apt-get install wireless-tools
Для xfce4 подходит wicd
apt-get install wicd
После того, как Wicd установился он должен появиться среди пунктов меню
«Интернет». Если не появляется — нужно перезапустить иксы. Возможно придется
делать reboot
В углу экрана должны появиться значок подключения. Если значков несколько,
значит установлено ещё что-то, например network-manager-gnome.
На всякий случай можно сделать.
apt-get remove network-manager-gnome
И потом
reboot
Один из значков должен пропасть. Навожу курсор на второй
выбираю «Подключиться». — Беспроводные сети не найдены —
По совету с lor я прописал в поле
Wireless interface значение wlan0. Сети должны появиться.
wicd apt-get remove wicd
apt-get autoremove
apt-get remove network-manager
apt-get autoremove
reboot
Затем переустановить нужное.
Железо
Получить информацию о железе
dmesg
Получить информацию о
CPU
cat /proc/cpuinfo
или
dmesg | grep CPU
Узнать разрядность
RAM
dmesg | grep «RAM width»
Узнать размер оперативной памяти
tac /proc/meminfo | grep MemTotal
Список устройств на
PCI
шине
lspci -k
Получить список примонтированных дисков и их размер можно командой df
df -ht ext4
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 454G 3.6G 427G 1% /
Флаг h — объём в human-readable виде
t ext4 — показать только диски с файловой системой типа ext4
Монтирование дисков
Подготовка
Нужно создать папку к которой примонтируется диск. Например, для диска
/mnt/w7free
mkdir /mnt/w7free
Или для флешки
mkdir /mnt/flashcard
Шаг 1.
Перед тем как монтировать диск нужо сначала понять какие диски подключены к компьютеру.
Есть несколько способов сделать это: lsblk, ls/dev/sd*, fdisk -l и другие
Получить список всех устройств, включая не примонтированные
lsblk | grep sd
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
├─sda2 8:2 0 461.4G 0 part /
└─sda3 8:3 0 3.9G 0 part [SWAP]
sdb 8:0 0 100.0G 0 disk
└─sdb1 8:1 0 512M 0 part /home
Существуют также диски
NVM (Non-Volatile Memory)
которые начинаются на nvm.
Их придётся смотреть другой командой — либо воспльзуйтесь
df
lsblk | grep nvm
nvme0n1 259:0 0 477G 0 disk
├─nvme0n1p1 259:1 0 512M 0 part /boot/efi
├─nvme0n1p2 259:2 0 976.6M 0 part /boot
└─nvme0n1p3 259:3 0 475.5G 0 part
└─nvme0n1p3_crypt 253:0 0 475.5G 0 crypt /
Реальные физические диски получают буквы a,
b и так далее. То есть sda это первый диск, sdb — второй и так далее.
Виртуальные разделы получают цифры. Диск sda поделен на три части а sdb состоит целиком из sdb1
Следующие два способа я делал на другом компьютере.
Второй способ — ls/dev/sd* и ls /dev/nvm*
ls /dev/sd*
/dev/sda /dev/sda2 /dev/sda5 /dev/sdb1 /dev/sdb5 /dev/sdb7
/dev/sda1 /dev/sda3 /dev/sdb /dev/sdb2 /dev/sdb6 /dev/sdb8
И для NVM дисков
ls /dev/nvm*
/dev/nvme0 /dev/nvme0n1 /dev/nvme0n1p1 /dev/nvme0n1p2 /dev/nvme0n1p3
Третий способ — fdisk -l, возможно нужно ввести sudo fdisk -l
debian:/home/andrey# fdisk -l
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x63e54f64
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 206847 102400 7 HPFS/NTFS/exFAT
/dev/sda2 206848 100558847 50176000 7 HPFS/NTFS/exFAT
/dev/sda3 100558848 1953521663 926481408 f W95 Ext’d (LBA)
/dev/sda5 100560896 1953521663 926480384 7 HPFS/NTFS/exFAT
Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xbbc1fe9a
Device Boot Start End Blocks Id System
/dev/sdb1 * 63 41785064 20892501 83 Linux
/dev/sdb2 41785126 976768064 467491469+ f W95 Ext’d (LBA)
/dev/sdb5 41785128 54283634 6249253+ 82 Linux swap / Solaris
/dev/sdb6 54283698 521887589 233801946 83 Linux
/dev/sdb7 521887653 585826289 31969318+ b W95 FAT32
/dev/sdb8 585826353 976768064 195470856 7 HPFS/NTFS/exFAT
Из этих данных можно сделать вывод о том, что физически жестких дисков видно два: sda и sdb, один из них на 1 Тб а другой
на 500 Гб. Предположим, что примонтировать нужно диск sda5 — можно
переходить к шагу 2
Шаг 2 (для флэш карты)
Физическая установка флешки в USB порт.
Шаг 3 (для флэш карты)
Снова используем команду
ls /dev/sd*
или
fdisk -l
Все новое по сравнению с предыдущим разом и есть ваша флешка. Причем, если появилось, например,
sdb и sdb1, то sdb — это флешка в целом (не знаю как это понять), а sdb1
— обычно и есть раздел, который нужно будет монтировать.
Шаг 4
Монтирование образа.
Само слово «монтирование» может смутить начинающего пользователя. Смысл всей манипуляции —
показать системе как связать какой-то из видимых дисков с какой-то папкой.
mount /dev/sda5 /mnt/w7free
Для флэшкарты
Предположим, что новый диск который мы нашли в Шаге 3. называется
sdс1
mount /dev/sdс1 /mnt/flashcard
Если нужно указать файловую систему, то пишем, например
mount -t vfat /dev/sdb /mnt/flashcard
где vfat — это указание файловой системы (fat),
-t это от слова type тип.
Автоматическое монтирование при загрузке
Чтобы не монтировать диски каждый раз вручную можно прописать этот процесс в файл
/etc/fstab
Сперва нужно узнать постоянный номер диска, который вы хотите примонтировать
ls -l /dev/disk/by-uuid
andrey@debian:~$ ls -l /dev/disk/by-uuid
итого 0
lrwxrwxrwx 1 root root 10 Апр 1 12:26 28F45727F456F712 -> ../../sda1
lrwxrwxrwx 1 root root 10 Апр 1 12:26 2ff64169-2a42-4134-bb7d-785d2cb7ac26 -> ../../sdb1
lrwxrwxrwx 1 root root 10 Апр 1 12:26 3AE8F3DBE8F3937D -> ../../sda2
lrwxrwxrwx 1 root root 10 Апр 1 12:26 3E8904579F5AA793 -> ../../sda5
lrwxrwxrwx 1 root root 10 Апр 1 12:26 BB76478F1B670CB0 -> ../../sdb8
lrwxrwxrwx 1 root root 10 Апр 1 12:26 DEFB-25FE -> ../../sdb7
lrwxrwxrwx 1 root root 10 Апр 1 12:26 e7b2f181-26ae-4a22-9c9a-10a6dc22daee -> ../../sdb5
lrwxrwxrwx 1 root root 10 Апр 1 12:26 eafb05d0-15c7-41a5-9709-318bb2c618b7 -> ../../sdb6
3E8904579F5AA793 — вот номер диска sda5, который нужно монтировать.
Открываем /etc/fstab
nano /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# / was on /dev/sda1 during installation
UUID=2ff64169-2a42-4134-bb7d-785d2cb7ac26 / ext4 errors=remount-ro 0 1
# /home was on /dev/sda6 during installation
UUID=eafb05d0-15c7-41a5-9709-318bb2c618b7 /home ext4 defaults 0 2
# swap was on /dev/sda5 during installation
UUID=e7b2f181-26ae-4a22-9c9a-10a6dc22daee none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0
И дописываем внизу строчки
#win7 disk NTFS - это комментарий, чтобы проще было ориентироваться.
UUID=3E8904579F5AA793 /mnt/w7free ntfs defaults,cp1251,umask=000 0 0
Монтирование с правами доступа
Если стоит задача сделать монтируемый диск доступный, например, только пользователю andrey
id пользователя у которого 1000
и группе admins id группы 1111,
и условия доступа к файлам вы хотите указать не 777 а, например 770
mount -t ntfs -o rw, uid=1000, gid=1111, fmask=0007, dmask=0117 /dev/sda5 /mnt/w7free/
где fmask это число, которое вычитается из 777 для доступа к файлам, а dmask — это как fmask только
dmask
для директорий.
Ссылки
Linux mount
Зайти на сайт по ftp
mc
Запустится midnight commander
F9
затем нужно найти FTP в верхнем меню. Адрес пишется следующим образом
login:password@hostname
В графической оболочке можно установить например filezilla.
Как создать файл в Linux
cat > filename.filenameextension
Структура
Программы
/usr/bin
Документация
/usr/share/doc
Конфигурационные файлы
/etc
Файл | Описание |
---|---|
/etc/aliases |
База данных почтовых псевдонимов.
Формат файла:
Системой используется не этот файл а файл
После обновления |
/etc/hosts.conf |
Содержит параметры разрешения доменных имен. Например, директва order hosts , bind означает, что сначала поиск IP-адреса по доменному имени будет произведен в файле /etc/hosts , а затем уже будет обращение к DNS-серверу, заданному в файле /etc/resolv.conf Директива multi on означает, что одному доменному имени могут соответствовать несколько IP-адресов |
/etc/hosts |
В этом файле можно прописать IP-адреса и имена узлов локальной сети , но обычно здесь указывается только IP-адрес узла localhost (127.0.0.1), потому что сейчас даже в небольшой локальной сети устанавливается собственный DNS-сервер |
/etc/hosts.allow | Содержит IP-адреса узлов, которым разрешен доступ к сервисам данного узла |
/etc/hosts.deny | IP-адреса узлов, которым запрещен доступ к сервисам данного узла |
/etc/iftab | Таблица интерфейсов, т.е. соответствие имен интерфейсов и их MAC-адресов |
/etc/motd |
Задает сообщение дня (Message of the day). Данный файл используется многими сетевыми сервисами (напримерб FTP-и SSH-сервисами), которые при регистрации пользователя могут выводить сообщение из этого файла |
/etc/resolv.conf |
Задаёт IP-адреса серверов DNS. Формат файла прост:
nameserver IP-адрес Всего можно указать четыре DNS-сервера |
/etc/services |
База данных сервисов, задающая соответствие символьного имени сервиса (напрмер, pop3) и номера порта (110/tcp, tcp — это наименование протокола) |
/etc/xinetd.conf |
Конфигурация суперсервера xinetd, предназначенного для запуска сетевых сервисов, которые не работают в автономном режиме |
# /etc/aliases
mailer-daemon: postmaster
postmaster: root
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root
root: andrey
Обновление дистрибутива
Выполнить команды отслеживая ошибки:
aptitude -f install
aptitude update
aptitude install apt aptitude dpkg
aptitude dist-upgrade
aptitude full-upgrade
Запись загрузочного usb диска
dd if=/home/andreyolegovichru/Downloads/image.iso of=/dev/sdb1 bs=1M
Где послеif= — пишем путь до образа, например,
/home/andrei/Downloads/debian-7.1.0-amd64-DVD-1.iso а
/dev/sbd1 — это ваш usb диск.
Определить путь до usb диска можно следующим образом: вытащить usb диск, сделать команду:
fdisk -l
Затем вставить usb диск и выполнить эту команду повторно. Появится пара новых
строк, это и есть
ваш диск. При использовании dd нужно указать общую часть этих двух строк,
т.е. если было sdb и sbd1 нужно оставить sbd.
Клавиша | Результат |
---|---|
ВЛЕВО | — 10 сек назад |
ВПРАВО | — 10 сек вперед |
ВВЕРХ | — 60 сек вперед |
ВНИЗ | — 60 сек назад |
9 | — Уменьшить громкость |
0 | — Увеличить громкость |
{ | — Уменьшить скорость воспроизведения |
} | — Увеличить скорость воспроизведения |
SPACE (пробел) | — Пауза |
F | — Полный экран |
Первая проблема, которая может возникнуть — ненастоящий fullscreen.
Картинка остается маленькой, а все свободное
место занимает чёрный фон. Мне помог запуск mplayer с ключом
-vo sdl
Если нужно посмотреть видео на языке оригинала, да ещё и с субтитрами (в наше время скачать можно и не такое)
потребуется кое-какая информация о видеофайле.
Поэтому первое что мы делаем это узнаем какие дорожки поддерживает наше видео:
mplayer -vo null -ao null -frames 0 -v file_name | grep aid
mplayer -vo null -ao null -frames 0 -v file_name | grep sid
После того как узнали возможные связки, а их у нас 2, используем их, а если быть точным то одну из них.
Для начала 1ая в которой мы указываем -aid (ID аудио) -sid (ID субтитров):
mplayer -aid 1 -sid 1 file_name
или 2ая в которой указываем напрямую -alang (язык аудио) или -slang (язык субтитров):
mplayer -alang eng -slang eng file_name
Shell (Командная оболочка)
Список доступных оболочек
cat /etc/shells
Узнать активную в данный момент оболочку
echo $SHELL
Смена
chsh
или
# usermod -s /bin/bash username
Если после смены оболочки возники проблемы, например, не зайти под root. Можно загрузиться в recovery mod
и сделать там # usermod -s /bin/bash root и # usermod -s /bin/bash username
Команды для работы с текстовыми файлами
Команда head
Вы можете воспользоваться командой
head если вам нужно взглянуть только на начало файла. Команда выглядит так:
head <filename>
Команда Head
может быть полезна, но так как она показывает только первых несколько строк,
вы не узнаете насколько велик сам файл. По умолчанию, вы можете просмотреть
первых десять строк файла, хотя вы можете изменить это число, выполнив следующую команду:
head -20
<filename>
Команда tail
Обратное head
действие выполняет tail
. С помощью tail
вы можете просмотреть последние десять строк файла.
Команда grep
Команда grep используется для поиска в файле заданных текстовых строк.
Например, если вы хотите найти все упоминания слова «DEBUG» в файле
reader.ini, выполните:
grep DEBUG reader.ini
Вы увидите все строки этого файла, в которых нашлось слово «DEBUG».
Не забывайте о регистре
Если не указано обратное,
grep ищет с
учётом регистра.
Это означает что поиск
Debug отличается от поиска debug.
Среди множества параметров
grep
есть
-i,
который указывает, что поиск должен выполняться без учёта регистра символов.
Прочитайте страницу man по
grep
man чтобы узнать больше об этой команде.
Перенаправление ввода/вывода и каналы
Вы можете использовать каналы и перенаправление вывода когда хотите
сохранить и/или напечатать информацию для последующего использования.
Например, вы можете воспользоваться командой
grep
чтобы найти в файле требуемый текст, а затем сохранить результат в
файле или отправить его на принтер.
Чтобы напечатать информацию, например, касающуюся
слова «Debug» в файле
sneakers.txt, введите:
grep Debug sneakers.txt | lpr
Знаки подстановки и регулярные выражения
Как быть если вы забыли имя файла, который вам нужен? Воспользовавшись знаками подстановки или регулярными выражениями, вы можете выполнять с файлом или файлами действия, не зная его(их) полного имени. Просто введите всё что знаете, и замените остальное знаком *.
Дополнительная информация о знаках подстановки и регулярных выражениях
Чтобы узнать больше о знаках подстановки
и регулярных выражениях, обратитесь к странице руководства, посвященной
bash (man bash).
Вспомните о том, что вы можете сохранить полученную информацию в текстовом файле,
выполнив команду
man bash | col -b > bash.txt
Затем вы можете открыть и прочитать файл с помощью
less или pico
(pico bash.txt)
Если вы хотите распечатать файл, будьте осторожны, он довольно большой.
Зная, что файл называется «sneak____.txt,» просто введите:
ls sneak*.txt
и вот полное имя файла:
sneakers.txt
Скорее всего при поиске вы чаще будете использовать знак умножения (
*). При поиске с этим знаком найдется всё, соответствующее заданному шаблону.
Даже выполнив:
ls *.txt
или:
ls sn*
Вы найдёте файл
sneakers.txt
и все остальные, имена которых начинаются
с «sn». Это позволяет максимально расширить область поиска.
Одним из способов уменьшения области поиска, является использование знака вопроса
(?). Также как знак умножения,
? помогает находить файл, удовлетворяющий условию поиска.
Однако ?
используется для замены всего одного символа, поэтому если вы ищете
sneaker?.txt, в результате вы найдете файл
sneakers.txt, и/или
sneakerz.txt, если такой файл существует.
В случае, если знак умножения входит в имя файла, как могло бы быть, если файл
sneakers.txt назывался бы
sneak*.txt,
вам понадобятся регулярные выражения.
Регулярные выражения более сложны, чем прямолинейные знаки вопроса и умножения.
С помощью обратной косой черты (),
вы можете определить, что вы не хотите искать всё
как происходит, если вы укажите знак умножения, а вам нужен именно
знак умножения в имени файла.
Если файл называется
sneak*.txt, введите:
sneak*.txt
Ниже приведён краткий список знаков подстановки и регулярных выражений:
-
*
— Соответствует любому количеству любых символов -
?
— Соответствует одному любому символу в строке (например,
sneaker?.txt) -
*
— Соответствует символу * -
?
— Соответствует символу ? -
)
— Соответствует символу )
Завершение работы
# halt
# poweroff
# shutdown
# shutdown 18:00
# shutdown -h now
Перезагрузка
reboot
reboot -f (форсированная)
Debian Linux | |
Установка Debian | |
Настройка сети в Debian | |
Firewall | |
Дата и время | |
X Window System Debian | |
Определить тип иксов | |
Загрузчик Grub2 | |
Запись загрузочной флешки | |
Загрузка в безопасном режиме | |
PATH | |
FAQ | |
Ошибки |