Handbook:Parts/Installation/System/ru
Не пытайтесь следовать инструкциям непосредственно из пространства имён Handbook:Parts (ЭТОЙ СТРАНИЦЫ!). Следующие ниже разделы используются в качестве основы для включения информации в специфичные для конкретной архитектуры руководства, и поэтому в них отсутствует важная информация.
Используйте список Руководств для получения инструкций по конкретной архитектуре.
Информация о файловой системе
Метки файловых систем и UUID
И MBR (BIOS), и GPT поддерживают как метки (labels), так и UUID файловой системы. Эти свойства могут быть определены в /etc/fstab в качестве альтернативы для команды mount для определения блочного устройства. Такие свойства используются при попытке найти и примонтировать блочные устройства. Метки и UUID файловой системы определяются через префиксы LABEL и UUID. Их можно посмотреть командой blkid:
root #
blkid
Если файловая система внутри раздела будет полностью затёрта (wipe), то значение меток и UUID файловой системы также будут изменены или удалены.
Благодаря уникальности UUID, читателям, использующим таблицу разделов в стиле MBR, рекомендуется использовать UUID вместо меток для определения монтируемых томов в /etc/fstab.
UUID файловых систем на разделе LVM и соотносящихся LVM снапшотах одинаковы, поэтому лучше избегать использование UUID для монтирования разделов LVM.
Метки разделов и UUID
У пользователей, которые пошли по пути использования GPT, есть несколько более надёжных вариантов для определения разделов в /etc/fstab. Метки разделов и UUID разделов могут быть использованы для идентификации разделов блочного устройства, независимо от того, какая файловая система была выбрана для самого раздела. Метки и UUID раздела определяются через префиксы PARTLABEL и PARTUUID соответственно. Их можно увидеть в терминале с помощью команды blkid:
Output for an amd64 EFI system using the Discoverable Partition Specification UUIDs may like the following:
root #
blkid
/dev/sr0: BLOCK_SIZE="2048" UUID="2023-08-28-03-54-40-00" LABEL="ISOIMAGE" TYPE="iso9660" PTTYPE="PMBR" /dev/loop0: TYPE="squashfs" /dev/sda2: PARTUUID="0657fd6d-a4ab-43c4-84e5-0933c84b4f4f" /dev/sda3: PARTUUID="1cdf763a-5b4c-4dbf-99db-a056c504e8b2" /dev/sda1: PARTUUID="c12a7328-f81f-11d2-ba4b-00a0c93ec93b"
Хотя это не всегда верно для меток разделов, использование UUID для идентификации раздела в fstab обеспечивает гарантию того, что загрузчик не собьётся при поиске определённого тома, даже если файловая система будет изменена в будущем. Использование по умолчанию старых файлов блочных устройств (/dev/sd*N) для определения разделов в fstab будет рискованно в системах, которые часто перезагружаются и в которых регулярно добавляются и удаляются блочные устройства SATA.
Именование файлов блочных устройств зависит от ряда факторов, включая то, как и в каком порядке диски подключены в системе. Они могут отображаться в другом порядке, в зависимости от того, какое из устройств обнаруживается ядром первым в начале загрузки. При этом, если вы не намерены постоянно переключать жесткие диски, использование файлов блочных устройств по умолчанию является простым и удобным подходом.
О файле fstab
В Linux все разделы, используемые системой, должны быть записаны в файле /etc/fstab. Этот файл содержит информацию о точках монтирования разделов (где они должны быть видны в структуре файловой системы), как они должны быть подключены, а также специальные параметры (автоматическое подключение или нет, может ли пользователь их подключать или нет и так далее).
Создание файла fstab
If the init system being used is systemd, the partition UUIDs conform to the Discoverable Partition Specification as given in Preparing the disks, and the system uses UEFI, then creating an fstab can be skipped, since systemd auto-mounts partitions that follow the spec.
В файле /etc/fstab используется синтаксис, напоминающий таблицу. Каждая строка состоит из шести полей, которые разделены пропусками (пробелами, отступами или смесь этого). Каждое поле имеет своё значение:
- Первое поле содержит блочное устройство (или удалённую файловую систему), которое следует примонтировать. Для экземпляров блочных устройств возможно использование различных идентификаторов, включая путь к устройству, метки файловой системы, метки раздела и UUID
- Второе поле содержит точку монтирования, к которой следует монтировать раздел.
- Третье поле содержит тип файловой системы, используемой разделом.
- Четвёртое поле содержит параметры, используемые командой mount во время монтирования. Так как у каждой файловой системы могут быть собственные уникальные параметры, рекомендуется прочитать man-страницу команды mount (man mount), чтобы получить полный список всех возможных параметров. Параметры монтирования разделяются запятыми.
- Пятое поле используется командой dump для определения того, нуждается ли раздел в дампе или нет. Обычно это поле содержит
0
(ноль). - Шестое поле используется командой fsck для определения порядка проведения проверки ошибок файловой системы, если система была отключена некорректно. Для корневой файловой системы необходимо указывать
1
, для остальных —2
(или0
, если проверка не требуется вовсе).
Файл /etc/fstab, который предоставляется в файлах stage Gentoo по умолчанию, не является валидным файлом fstab, а представлен в качестве шаблона, который может быть использован для ввода актуальных значений.
root #
nano /etc/fstab
DOS/Legacy BIOS systems
Давайте посмотрим, как записать настройки для /boot/ раздела. Это просто пример, поэтому запись необходимо изменить в соответствии с ранее выбранной схемой разделов. В нашем amd64 примере, /boot/ является обычным /dev/sda1 разделом с файловой системой xfs. Необходимо проверять его во время загрузки, поэтому мы запишем следующее:
# Исправьте все различия в форматировании, созданные на этапе "Подготовка дисков".
/dev/sda1 /boot defaults 0 2
Из соображения безопасности некоторые пользователи могут не захотеть автоматически монтировать раздел /boot/. Для этого следует заменить defaults на noauto. Это будет означать, что раздел придётся монтировать каждый раз, когда понадобится его использовать.
Добавьте правила, которые соответствуют ранее запланированной схеме разметки диска, а также правила для таких устройств, как компакт-диски, и других устройств (если они есть в системе).
Ниже приведён более подробный пример файла /etc/fstab:
# Исправьте все различия в форматировании и добавьте дополнительные разделы, созданные на этапе "Подготовка дисков".
/dev/sda1 /boot defaults 0 2
/dev/sda2 none swap sw 0 0
/dev/sda3 / xfs defaults,noatime 0 1
/dev/cdrom /mnt/cdrom auto noauto,user 0 0
/dev/cdrom /mnt/cdrom auto noauto,user 0 0 }}
UEFI systems
Below is an example of an /etc/fstab file for a system that will boot via UEFI firmware:
# Adjust for any formatting differences and/or additional partitions created from the "Preparing the disks" step
/dev/sda1 /efi vfat umask=0077 0 2
/dev/sda2 none swap sw 0 0
/dev/sda3 / xfs defaults,noatime 0 1
</div>
/dev/cdrom /mnt/cdrom auto noauto,user 0 0
Placeholder for architecture-specific fstab examples.
При использовании auto
в третьем поле команда mount попытается автоматически определить тип файловой системы. Это рекомендуется для отсоединяемых устройств, которые могут использовать разные файловые системы. Параметр user
в четвертом поле позволяет монтировать компакт-диски обычными пользователями.
To improve performance, most users would want to add the noatime
mount option, which results in a faster system since access times are not registered (those are not needed generally anyway). This is also recommended for systems with solid state drives (SSDs). Users may wish to consider lazytime
instead.
Из–за ухудшения производительности, не рекомендуется устанавливать опцию монтирования
discard
в /etc/fstab. Вместо этого планируйте удаление блоков на периодической основе с помощью планировщика заданий, такого, как cron, или с помощью таймера (systemd). Смотрите статью Periodic fstrim jobs для более подробной информации.Дважды проверьте файл /etc/fstab, сохраните его и выйдите из редактора, чтобы продолжить дальше.
Информация о сети
Важно учесть, что следующие разделы приведены для того, чтобы помочь читателю быстро настроить свою систему для использования в локальной сети.
Для систем с OpenRC, более подробное руководство по настройке сети доступно в разделе Расширенная настройка сети, который находится ближе к концу руководства. Системы с более специфическими сетевыми потребностями могут пропустить этот раздел, а затем вернуться сюда, чтобы продолжить установку.
Для более конкретной настройки сети systemd, пожалуйста, обратитесь к разделу Сеть статьи systemd.
Имя хоста
Первое решение, которое предстоит принять администратору системы, это как назвать его/её компьютер. Кажется, что это является довольно лёгким решением, но многие пользователи испытывают трудности с поиском подходящего имени для своего компьютера. Чтобы не мешкать слишком долго, выберите любое имя — его можно будет сменить позже. Например, в приведённом ниже примере используется имя хоста tux.
Установка имени хоста (OpenRC или systemd)
root #
echo tux > /etc/hostname
systemd
Чтобы установить имя хоста для системы с уже запущенным systemd, можно воспользоваться утилитой hostnamectl.
Например, чтобы установить имя хоста на "tux", необходимо запустить:
root #
hostnamectl hostname tux
Просмотрите помощь, используя команду hostnamectl --help или man 1 hostnamectl.
Сеть
Существует много способов настройки сетевых интерфейсов. Этот раздел покрывает только некоторые из них. Выберите тот, которые кажется более подходящим для вашей установки.
DHCP через dhcpcd (любая система инициализации)
В большинстве локальных сетей работает сервер DHCP. В этом случае для получения IP-адреса рекомендуется использовать программу dhcpcd.
Чтобы установить:
root #
emerge --ask net-misc/dhcpcd
Чтобы включить и затем запустить сервис на системах с OpenRC:
root #
rc-update add dhcpcd default
root #
rc-service dhcpcd start
Чтобы включить сервис на системах с systemd:
root #
systemctl enable dhcpcd
После выполнения этих шагов при следующей загрузке системы dhcpcd должен получить IP-адрес от DHCP-сервера. Подробнее см. в статье Dhcpcd.
netifrc (OpenRC)
Это один конкретный способ настройки сети, используя Netifrc с OpenRC. Существуют и другие способы для более простой настройки, такие как Dhcpcd.
Настройка сети
Во время установки Gentoo Linux сеть была уже настроена, однако она была настроена для самого установочного окружения, а не для системы. Сейчас мы устраним это упущение.
Больше информации о настройке сети, в том числе об объединении интерфейсов, создании мостов, настройке 802.1Q VLAN и беспроводной сети, рассматриваются в разделе Настройка сети.
Все настройки сети собраны в файле /etc/conf.d/net. В нём используется простой, но, возможно, пока ещё непонятный синтаксис. Не беспокойтесь! Обо всём мы расскажем далее. Полностью документированные примеры, описывающие множество разных конфигураций, доступны в /usr/share/doc/netifrc-*/net.example.bz2.
Сначала установите net-misc/netifrc:
root #
emerge --ask --noreplace net-misc/netifrc
По умолчанию используется DHCP. Но для того, чтобы он заработал, необходимо установить DHCP-клиент. Это будет описано далее в разделе «Установка необходимым системных пакетов».
Если сетевое соединение требует дополнительной настройки DHCP или вовсе не использует DHCP, тогда откройте /etc/conf.d/net:
root #
nano /etc/conf.d/net
Настройте оба параметра config_eth0 и routes_eth0, введя информацию о IP-адресе и информацию о маршрутизации:
Мы предполагаем, что сетевой интерфейс будет называться eth0, однако это во многом зависит от системы. Будем считать, что интерфейс будет называться так же, как он назывался при загрузке с установочного носителя, если установочный носитель достаточно свежий. Больше информации можно найти в разделе Именование сетевых интерфейсов.
config_eth0="192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255"
routes_eth0="default via 192.168.0.1"
Для использования DHCP настройте config_eth0:
config_eth0="dhcp"
Для получения списка дополнительных настроек прочтите /usr/share/doc/netifrc-*/net.example.bz2. Не забудьте также прочитать man-страницу для DHCP-клиента, если требуется сделать дополнительные настройки.
Если в системе имеются несколько сетевых интерфейсов, то повторите предыдущие шаги для config_eth1, config_eth2, и так далее.
Теперь сохраните настройки и выйдите из редактора, чтобы продолжить далее.
Автоматический запуск сетевого подключения при загрузке системы
Для того, чтобы сетевые интерфейсы начинали работать во время загрузки системы, их необходимо добавить к уровню запуска по умолчанию.
root #
cd /etc/init.d
root #
ln -s net.lo net.eth0
root #
rc-update add net.eth0 default
Если в системе есть несколько сетевых интерфейсов, то соответствующие файлы net.* должны быть созданы также, как мы сделали это для net.eth0.
Если после загрузки системы выяснилось, что имя сетевого интерфейса (которое в настоящее время указано как eth0
) было неверным, выполните следующие действия для исправления:
- Измените настройки в файле /etc/conf.d/net, используя правильное название интерфейса (например,
enp3s0
илиenp5s0
вместоeth0
). - Создайте новую символьную ссылку (например, /etc/init.d/net.enp3s0).
- Удалите старую символьную ссылку (rm /etc/init.d/net.eth0).
- Добавьте новую в уровень запуска по умолчанию.
- Удалите старую с помощью rc-update del net.eth0 default.
Файл hosts
Следующим шагом мы дадим Linux сведения о сетевом окружении. Это делается с помощью /etc/hosts, который помогает разрешать имя узла в IP-адреса для узлов, которых нет в сервере имён.
root #
nano /etc/hosts
# Это обязательные настройки для текущей системы
127.0.0.1 tux.homenetwork tux localhost
# Дополнительные настройки для других систем в сети
192.168.0.5 jenny.homenetwork jenny
192.168.0.6 benny.homenetwork benny
Сохраните и закройте текстовый редактор для продолжения.
Системная информация
Пароль суперпользователя
Изменить пароль суперпользователя (с именем root) можно с помощью команды passwd.
root #
passwd
Позже будет создан обычный пользователь для повседневных задач.
Настройка инициализации и загрузки
OpenRC
Если вы используете OpenRC, эта система инициализации использует /etc/rc.conf для настройки сервисов, запуска и остановки системы. Откройте /etc/rc.conf и прочтите комментарии в файле. Проверьте настройки и измените их при необходимости.
root #
nano /etc/rc.conf
Далее, откройте /etc/conf.d/keymaps для настройки раскладки клавиатуры. Отредактируйте файл и выберите нужную раскладку.
root #
nano /etc/conf.d/keymaps
Соблюдайте особую осторожность с переменной keymap. Если выбрать неправильный раскладку, то может получится странный результат при печати текста.
Наконец, отредактируйте /etc/conf.d/hwclock чтобы установить параметры часов. Отредактируйте его в соответствии с личными предпочтениями.
root #
nano /etc/conf.d/hwclock
Если аппаратные часы не настроены на время UTC, то в файле необходимо установить clock="local"
. В противном случае система может отображать неправильное время.
systemd
Сначала рекомендуется запустить systemd-machine-id-setup, а затем systemd-firstboot, которые подготовят различные компоненты системы к первой загрузке в новой среде systemd. При передаче следующих опций пользователю будет предложено установить локаль, часовой пояс, имя хоста, пароль от root и пользовательскую оболочку для root. После этого, установке будет присвоен случайный идентификатор машины:
root #
systemd-machine-id-setup
root #
systemd-firstboot --prompt
Затем пользователи должны запустить systemctl, чтобы сбросить все установленные файлы устройств на предустановленные значения правил:
root #
systemctl preset-all --preset-mode=enable-only
Также можно запустить полное изменение предустановленных значений, но это может сбросить все службы, которые уже были настроены во время процесса:
root #
systemctl preset-all
Эти два шага помогут обеспечить плавный переход от среды установщика к первой загрузке системы.