Альт Сервер представитель самого старого и самобытного семейства операционных систем Альт, представляющих полностью самостоятельную ветвь развития Linux и обладающую самым большим отечественным репозиторием. Также Альт представляет интерес в рамках процесса импортозамещения, Альт Сервер 10 входит в реестр Минцифры. В данной статье мы рассмотрим как выполнить установку и первоначальную настройку дистрибутива Альт Сервер 10 в минимальной конфигурации.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Альт Сервер 10 - коммерческая серверная операционная система от Базальт СПО, согласно лицензионному соглашению ее могут использовать бесплатно физические лица. Юридические лицам и индивидуальные предприниматели, государственные и муниципальные органы, а также иные хозяйствующие субъекты обязаны приобрести лицензию. На момент написания статьи бессрочная лицензия на Альт Сервер 10 стоила 13 200 руб.
Также, несмотря на то, что соответствующие пакеты свободно доступны в репозитории лицензия не предусматривает предоставление прав на использование дистрибутива в качестве хоста виртуализации. При необходимости использовать данную функцию, нужно приобрести лицензию на Альт Виртуализация.
Начало установки
Альт Сервер имеет собственный установщик привычный по другим системам Альт, он запускается и работает в графическом режиме даже если вы не собираетесь ставить графическую оболочку.
Прежде всего следует выбрать язык системы и комбинацию клавиш для переключения языков ввода.
Затем выбираем часовой пояс и оставляем флаг Хранить время BIOS по Гринвичу, это типичная настройка для Linux систем, которые предполагают время аппаратных часов как UTC и делают к нему поправку на часовой пояс, в то время как Windows хранит в BIOS именно поясное время.
В общем никаких особенностей или неожиданностей тут нет, даже если вы первый раз устанавливаете систему семейства Альт.
Разметка дискового пространства
Без преувеличения - разметка один из важнейших этапов установки, так как с результатом принятых на этом шаге решений вам придется жить все оставшееся время и очень часто изменить разметку в уже установленной системе бывает крайне сложно, либо невозможно.
Мы будем рассматривать установку на системы с UEFI, так как практически все современные системы используют UEFI вместо BIOS. Еще один современный подход - разметка единым разделом и если вы не знаете как точно разбить файловую систему - следуйте ей. Повсеместное внедрение твердотельных накопителей принесло еще один новый подход в разметке - размещать раздел подкачки первым на диске. Это также оправдано, так как позволяет более гибко оперировать разделами с данными и изменять их размеры.
Автоматическая разметка
Для автоматической разметки Альт Сервер предлагает выбрать единственный профиль предполагающий наличие не менее 40 ГБ дискового пространства.
Но результаты разметки вряд-ли смогут нас порадовать: один раздел подкачки в размере оперативной памяти чего стоит. Хотя никаких иных неожиданностей разметка не предполагает. Схема разбивки - все файлы в одном разделе.
Конечно, все это можно откорректировать, но зачем? Проще сразу разметить диск вручную.
Ручная разметка
Для ручной разметки выбираем профиль Вручную и сразу удаляем с дисков уже созданные там разделы, в результате вы должны получить следующую картину:
Теперь начинаем создавать разметку. Первым делом создадим раздел размером не менее 512 МБ для загрузчика EFI. Тип раздела выбираем efi system partition.
Затем создаем на разделе том с файловой системой FAT32 и точкой монтирования /boot/efi, нужные опции монтирования будут добавлены автоматически.
Затем создаем раздел подкачки, хотя это сугубо по желанию, в современных системах можно не выделять отдельный раздел, а воспользоваться файлом подкачки, создав его уже после установки системы.
Мы же создадим отдельный раздел размером в 4 ГБ и выберем для него тип Linux filesystem:
При создании тома выбираем тип ФС - Файловая система подкачки (swap):
На оставшемся пространстве создаем еще один раздел с типом Linux filesystem, который форматируем в ext4/XFS и монтируем как корневую файловую систему. В результате у вас должна получиться примерно следующая разметка:
По сути это классическая схема, которая может использоваться для простых систем или виртуальных машин, когда не требуются сложные конфигурации системы хранения или ее избыточность.
Настройка LVM
LVM (Logical volume management, менеджер логических томов) - дополнительный уровень абстракции между системой хранения и файловой системой, предоставляющей дополнительные возможности по управлению томами и придающий ей дополнительную гибкость. Для лучшего понимания темы LVM советуем вам ознакомиться с дополнительными материалами:
LVM для начинающих. Часть 1. Общие вопросы
LVM для начинающих. Часть 2. Основы управления томами
Перед тем как настраивать разметку LVM помним, что разделы загрузки /boot и ESP (при UEFI) должны располагаться за пределами структуры LVM.
Точно также создаем раздел efi system partition размером в 512 МБ и с файловой системой FAT32 смонтированной в /boot/efi. Затем создаем раздел размером не менее 1 ГБ с типом Linux filesystem и файловой системой ext4, который монтируем в /boot, нужные опции монтирования инсталлятор подставит автоматически.
Теперь на оставшемся свободном месте создаем еще один раздел с типом basic data, ниже обязательно снимаем флаг Создать том.
После чего переходим в раздел LVM и внизу окна у нас появится кнопка Создать группу томов.
Группы томов (Volume Group) являются основой LVM и представляют некий виртуальный диск, который может располагаться на одном или нескольких дисках физических. От нас потребуется только указать его уникальное имя, его можно выбрать любым, но желательно чтобы оно отражало физическую сущность. В нашем случае мы выбрали alt-vg0.
Группу томов мы можем разбить на один или несколько логических разделов (Logical Volume), в нашем случае он будет один и в него мы смонтируем корневую файловую систему.
Настройка программного RAID
Программный RAID - mdadm - проверенное временем решение, позволяющее организовать отказоустойчивую дисковую конфигурацию без серьезных финансовых вложений. Поэтому он пользуется заслуженной популярностью и его нельзя обойти стороной.
В тоже время системы с UEFI имеют собственные особенности и использование программного RAID в них не так просто, как кажется на первый взгляд. Поэтому рекомендуем дополнительно ознакомиться с нашей статьей, все сказанной в ней, с небольшими поправками, справедливо и для Альт Сервер:
Настраиваем программный RAID на UEFI-системах в Debian и Ubuntu
Также как и в случае с LVM-разметкой ESP-разделы должны располагаться за пределами RAID-массива. Также оба диска должны быть размечены полностью идентично.
Поэтому на первом диске создаем раздел efi system partition размером в 512 МБ и с файловой системой FAT32 смонтированной в /boot/efi. На втором диске создаем полностью аналогичный раздел, но без точки монтирования.
Если вы используете SWAP-разделы, то создайте по одинаковому разделу на обоих дисках. В RAID включать их не нужно, это не даст никаких плюсов, подкачке отказоустойчивость не требуется, а отказ раздела не препятствует загрузке ОС.
Зато в раздельной подкачке есть плюсы: в два раза больший объем и более высокое быстродействие за счет отсутствия пенальти RAID и возможности одновременного чтения сразу с двух дисков.
На оставшемся свободном месте следует создать разделы basic data без создания на них томов (снимаем флаг Создать том при создании раздела).
Теперь переходим в раздел RAID и внизу окна будет доступна кнопка Создать RAID.
Затем выбираем уровень RAID (для двух дисков доступны уровни 0 и 1):
И разделы которые мы включаем в массив, напоминаем - RAID mdadm строится на основе разделов, один массив - один раздел.
После чего создаем на созданном MD-устройстве раздел, форматируем его в ext4/XFS и монтируем как корневой. При такой настройке загрузчик будет установлен только на один из FAT-разделов и вам потребуется выполнить дополнительную настройку по копированию его на второй диск.
Настройка программного RAID с размещением на нем загрузочного раздела EFI
При использовании зеркального массива (RAID 1) имеется возможность разместить загрузчик на RAID-массиве, однако такой сценарий не является официально рекомендуемым. К плюсам такого решения можно отнести более простую установку и обслуживание, к минусам - то что загрузчик окажется у вас в единственном экземпляре, что повышает шансы его повреждения.
Для такой настройки создаем в начале диска два раздела basic data без создания на них томов (снимаем флаг Создать том при создании раздела) размером 512 МБ для загрузочного раздела, за ними, по желанию, два раздела подкачки и еще два раздела basic data под данные.
Затем последовательно создаем на них два отдельных RAID-массива, при этом для загрузочного массива обязательно снимаем флаг Суперблок версии 1.
На этом MD-устройстве создаем том с файловой системой FAT32 и точкой монтирования /boot/efi, на втором массиве создаем обычный Linux-том для данных с монтированием в корень файловой системы.
При таком варианте разметки вы получите предупреждение о том, что вам следует установить загрузчик EFI в варианте для съемных устройств, запомним это.
На этом все основные сценарии разметки дисков мы рассмотрели и перейдем к следующему этапу.
Завершение установки
После того, как вы разметили диски вам будет предложено выбрать профиль установки, нас интересует максимально чистая система, поэтому выберем профиль Минимальная установка.
После этого начнется установка системы в выбранной конфигурации, в нашем случае это не займет много времени.
Следующий этап - установка загрузчика. Во всех случаях, кроме установка загрузчика на RAID, выбираем EFI (рекомендуемый), в случае установки загрузчика на массив - выберите EFI (для съемных устройств).
Следующий важный шаг - настройка сети. Данный интерфейс имеет одну тонкость, если вы добавили IP-адрес в поле Добавить IP, то обязательно потом нажмите кнопку Добавить, чтобы адрес из этого поля перешел в поле выше. Остальные опции просто задаются в своих полях.
После чего задаем пароль для суперпользователя root и заводим отдельного пользователя для работы, первый созданный при установке пользователь также получит административные права.
После чего завершаем установку и перезагружаем систему.
Настройка загрузчика EFI и его копирование на второй раздел
Если вы настроили RAID-массив с раздельными загрузочными разделами, то загрузчик у вас установлен только на первый диск, поэтому нужно выполнить ряд дополнительных настроек, они довольно несложные.
Прежде всего выясним идентификаторы разделов, для этого воспользуемся командой:
lsblk -o +uuid
В полученном выводе нас прежде всего интересует идентификатор EFI-раздела, который смонтирован в /boot/efi.
Теперь нам надо изменить идентификатор второго загрузочного раздела, чтобы они были идентичными. Прежде всего размонтируем второй раздел:
umount /dev/sdb1
Затем выполним:
mkdosfs -i C0F9924E /dev/sdb1
Обратите внимание, идентификатор раздела записываем единой строкой без дефисов и пробелов.
После чего получим список текущих загрузочных записей EFI:
efibootmgr -v
В выводе нас интересует загрузочная запись altlinux. Запомните или запишите путь к EFI-образу для загрузки системы: \EFI\altlinux\shimx64.efi.
Создадим аналогичную запись для второго диска:
efibootmgr -c -d /dev/sdb -p 1 -L "altlinux 2" -l "\EFI\altlinux\shimx64.efi"
Последним шагом скопируем содержимое загрузочного раздела с первого диска на второй, для этого смонтируем второй EFI-раздел:
mount /dev/sdb1 /mnt
И скопируем на него содержимое первого EFI-раздела:
cp -R /boot/efi/EFI/ /mnt
После чего отмонтируем раздел:
umount /dev/sdb1
Теперь можно попробовать перезагрузиться и при загрузке выбрать второй загрузчик:
После загрузки снова выполните:
lsblk
Как видим, загрузочный раздел теперь смонтирован на /dev/sdb1, т.е. мы успешно загрузились со второго диска.
Включаем sudo
Как мы уже говорили, первый созданный пользователь получает административные права, однако при попытке повысить их через sudo мы столкнемся с ошибкой:
Как так? Дело в том, что sudo из коробки не настроен, поэтому открываем файл /etc/sudoers и находим в нем одну из двух строк. Первая позволяет всем членам группы wheel повышать права для исполнения любых команд после ввода пароля пользователя:
# WHEEL_USERS ALL=(ALL:ALL) ALL
Вторая позволяет делать тоже самое, но без пароля:
# WHEEL_USERS ALL=(ALL:ALL) NOPASSWD: ALL
Раскомментируйте только одну из них, после чего выйдите и снова зайдите своим пользователем или перезагрузите компьютер.
Создание файла подкачки
В современных системах раздел подкачки использовать не обязательно, вместо него можно использовать файлы подкачки, это более гибко и удобно. Для примера создадим файл подкачки размером 4 ГБ:
fallocate -l 4G /swapfile
Установим на него нужные права:
chmod 600 /swapfile
Создадим в нем пространство подкачки:
mkswap /swapfile
И подключим его:
swapon /swapfile
Для того, чтобы он монтировался каждый раз при входе в систему, добавим в /etc/fstab строку:
/swapfile none swap sw 0 0
Теперь можем перезагрузить сервер и убедиться, что файл подкачки автоматически монтируется в систему.
Настраиваем временный раздел /tmp
Еще одной особенностью ОС семейства Альт является то, то директория /tmp вынесена в оперативную память на tmpfs и по умолчанию использует половину выделенной серверу памяти.
Однако это не говорит о том, что половина памяти зарезервирована и не используется, tmpfs предполагает динамическое выделение памяти по мере необходимости.
Но в связи с таким положением дел вы можете столкнуться с неожиданным поведением системы. Например, если у вас на сервере мало оперативной памяти (виртуальная машина или VPS), то при загрузке дампа большого размера вы можете получить сообщение, что на устройстве нет свободного места. Либо, если оперативной памяти достаточно, столкнетесь с ситуацией когда она занята "непонятно чем".
Что можно сделать в этой ситуации? Кардинальное решение - отключить вынос /tmp в оперативную память, для этого откройте /etc/fstab и закомментируйте строку:
tmpfs /tmp tmpfs nosuid 0 0
Другой вариант - явно настроить выделение памяти, например, выделим под tmpfs ровно 4 ГБ, для этого в /etc/fstab измените строку:
tmpfs /tmp tmpfs size=4g,nr_inodes=1m,nosuid 0 0
В любом случае не рубите с плеча, а трезво оцените наличие свободных ресурсов и целесообразность их выделения под раздел с временными файлами.
Исправляем ошибку имен RAID-массивов md127
Если при установке системы вы настроили программный RAID, то можете заметить, что все работает нормально, только сами массивы имеют имена md127, md126 и т.д., что характерно для отказавших или подключенных с другой системы массивов.
Это связано с тем, что в системе не создается конфигурация mdadm, поэтому исправим это самостоятельно. Прежде всего создадим файл конфигурации на основании шаблона:
cp /etc/mdadm.conf.sample /etc/mdadm.conf
Затем внесем в него информацию о уже собранных массивах:
mdadm --examine --scan >> /etc/mdadm.conf
Затем откроем файл /etc/mdadm.conf и внесем в него корректировки. А именно переименуем MD-устройства на привычные наименования. При этом для загрузочных массивов (суперблок 0.9) и обычных пути будут несколько разные:
ARRAY /dev/md0 UUID=68329d7c:38998dd8:765dbcde:b5cbda6a
ARRAY /dev/md/md1 metadata=1.2 UUID=0cd2296b:b7ee3a63:2b85e03c:d5f8bd71 name=md1
Так для загрузочного массива имя указываем как /dev/mdN, а для остальных /dev/md/mdN. Теперь пересоберем загрузочный образ:
make-initrd --kernel=`uname -r`
Перезагружаем систему и убеждаемся что MD-устройства именуются правильно.
Настраиваем сеть при помощи Etcnet
В Альт применяется собственный сетевой менеджер - Etchet, это достаточно своеобразный, но достаточно простой и логичный продукт. Все сетевые настройки хранятся в /etc/net/ifaces во вложенных папках с именами интерфейсов. И если у нас активный сетевой адаптер определяется как ens33, то полный путь к папке настроек будет /etc/net/ifaces/ens33.
Основные настройки интерфейса расположены в файле options, его наличие в директории обязательно. Если используется автоматическая настройка по DHCP, то это будет единственный файл с следующим содержимым:
BOOTPROTO=dhcp
TYPE=eth
CONFIG_WIRELESS=no
SYSTEMD_BOOTPROTO=dhcp4
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_CONTROLLED=no
Здесь же мы можем передать управление сетевым интерфейсом NetworkManager или Systemd, однако эти варианты мы здесь рассматривать не будем.
Для перехода на статические адреса изменим содержимое файла options на следующее:
BOOTPROTO=static
TYPE=eth
CONFIG_WIRELESS=no
SYSTEMD_BOOTPROTO=static
CONFIG_IPV4=yes
DISABLED=no
NM_CONTROLLED=no
SYSTEMD_CONTROLLED=no
ONBOOT=yes
Теперь нам нужно создать в директории интерфейса три файла: ipv4address, ipv4route и resolv.conf. Их назначение вполне понятно из названий. Первый содержит назначенный IP-адрес, второй - маршрутную информацию, а третий отвечает за разрешение имен.
Легче всего создать и заполнить эти файлы при помощи следующих команд, если файл существует его содержимое будет перезаписано. Сначала назначим IP-адрес (в нашем случае 192.168.3.13) :
echo "192.168.3.13/24" > /etc/net/ifaces/ens33/ipv4address
Затем укажем маршрут по умолчанию (основной шлюз сети):
echo "default via 192.168.3.1" > /etc/net/ifaces/ens33/ipv4route
И DNS-сервер:
echo "nameserver 192.168.3.1" > /etc/net/ifaces/ens33/resolv.conf
Если нужно добавить еще одну запись, то немного изменяем команду:
echo "nameserver 192.168.3.2" >> /etc/net/ifaces/ens33/resolv.conf
Также можем добавить доменный суффикс (домен поиска) до которого будут дополняться все плоские имена в DNS-запросах:
echo "search it-31.lab" >> /etc/net/ifaces/ens33/resolv.conf
После чего перезапустим службу сетевого менеджера командой:
systemctl restart network
В дальнейшем вы можете вносить изменения в созданные файлы любым удобным вам образом.
Обновление системы
Еще одной особенностью Альт является использование пакетов формата RPM вместе с пакетным менеджером apt-get. Поэтому работа с ним будет привычна пользователям DEB-систем, остальным придется переучиваться.
Сначала обновим список доступных пакетов:
apt-get update
Затем выполним обновление системы:
apt-get dist-upgrade
Для обновления ядра системы потребуется выполнить отдельную команду:
update-kernel
После чего выполним очистку после обновления:
apt-get clean
Если вы обновили ядро, то систему потребуется перезагрузить.
Добавляем синтаксис APT
Альт для работы с пакетами использует apt-get, в то время как пользователи DEB-систем привыкли к более современному apt. Если вы хотите продолжить использовать привычный синтаксис то вам потребуется установить дополнительный пакет (кстати, разработанный нами):
apt-get install apt-aliases
Теперь вам нужно выйти и заново войти в систему, либо перезагрузить компьютер. После чего вы сможете использовать для управления пакетами привычный синтаксис apt.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Последние комментарии