Определите, какой часовой пояс будет установлен для системы. Просмотрите список всех доступных часовых поясов в каталоге /usr/share/zoneinfo/, затем запишите выбранный в файл /etc/timezone.
root #ls /usr/share/zoneinfoOpenRC
root #echo "Europe/Kirov" > /etc/timezoneСтарайтесь не использовать часовые пояса, начинающиеся с /usr/share/zoneinfo/Etc/GMT*, так как их названия не отражают настоящий часовой пояс. Например, GMT-8 на самом деле является GMT+8.
Далее перенастроим пакет sys-libs/timezone-data, что обновит файл /etc/localtime, основываясь на записи в /etc/timezone. Файл /etc/localtime используется системной библиотекой C, чтобы узнать, в каком часовом поясе находится система.
root #emerge --config sys-libs/timezone-dataГенерация локалей
Большинству пользователей достаточно иметь одну или две локали на своих системах.Локали, поддерживаемые системой, должны быть указаны в /etc/locale.gen.
root #nano -w /etc/locale.genСледующие локали являются примером для создания английской (США) и русской (Россия) локалей с поддержкой формата символов (например, UTF-8).
/etc/locale.genВключение US и RU локалей с поддержкой формата символовen_US ISO-8859-1 en_US.UTF-8 UTF-8 ru_RU.UTF-8 UTF-8
Мы настоятельно рекомендуем добавить хотя бы одну локаль UTF-8, так как для сборки многих приложений это является обязательным требованием.
Далее, запустим команду locale-gen, которая создаст все перечисленные в файле /etc/locale.gen локали.
root #locale-genЧтобы убедится, что выбранные локали теперь доступны, запустите команду locale -a.
Необязательно: Установка файлов прошивки
Для корректной работы некоторых драйверов требуется установка дополнительных файлов прошивки. Часто подобное требуется для сетевых интерфейсов, особенно беспроводных. Также, современные видеочипы от AMD, NVidia и Intel, при использовании отрытых драйверов, часто нуждаются во внешних файлах firmware. Большинство файлов прошивки поставляется в пакете sys-kernel/linux-firmware:
root #emerge --ask sys-kernel/linux-firmwareУстановка исходного кода
Для систем, основанных на amd64 архитектуре, рекомендуется пакет sys-kernel/gentoo-sources.
Выберем подходящий исходный код ядра и установим его с помощью emerge:
root #emerge --ask sys-kernel/gentoo-sourcesДанная команда установит исходный код ядра Linux в /usr/src/, в котором символьная ссылка linux будет указывать на установленную версию:
For further information regarding the purpose of the symlink, and how to manage it, please refer to Kernel/Upgrade.
First, list all installed kernels:
root #eselect kernel listAvailable kernel symlink targets:
[1] linux-4.9.16-gentoo
In order to create a symbolic link called linux, use:
root #eselect kernel set 1root #ls -l /usr/src/linuxlrwxrwxrwx 1 root root 12 Oct 13 11:04 /usr/src/linux -> linux-4.9.16-gentoo
Ручная сборка ядра gentoo
Если ручная установка кажется слишком сложной, то можно воспользоваться утилитой genkernel, которая сконфигурирует и соберёт ядро автоматически. Но в случае использования виртуальной машины genkernel зарекомендовал себя не очень хорошо!
Переходим в директорию с ядром:
root #cd /usr/src/linuxУстановка правильного установочного ядра. Прежде чем использовать ядра дистрибутива, убедитесь, что установлен правильный пакет install kernel для вашей системы. При использовании systemd-boot (ранее Gummiboot) установите:
При использовании традиционной схемы загрузки /boot (например, GRUB, LILO и т. д.) вариант gentoo должен быть установлен по умолчанию. Если сомневаешься:
При использовании традиционной схемы загрузки:
root #nano -w /etc/fstab/etc/fstabНастройка точки монтирования /boot/dev/sda1 /boot ext2 noatime 1 2 /dev/sda3 / ext4 noatime 0 1 /dev/sda2 none swap sw 0 0 /dev/cdrom /mnt/cdrom auto noauto,ro 0 0
В процессе настройки Gentoo /etc/fstab ещё будет изменён.
Установка ядра дистрибутива. Чтобы собрать ядро с исправлениями Gentoo из исходного кода, введите:
root #emerge --ask sys-kernel/gentoo-kernelGo
Системные администраторы, которые хотят избежать локальной компиляции исходного кода ядра!
Вместо этого использовать предварительно скомпилированные образы ядра:
root #emerge --ask sys-kernel/gentoo-kernel-binЭтот процесс займёт некоторое время.
Задачи после установки/обновления
Ядра дистрибутива теперь могут пересобирать модули ядра, установленные другими пакетами. linux-mod.eclass предоставляет USE=dist-kernel, который управляет зависимостью подслота от виртуального/dist-kernel. Включение этого в таких пакетах, как sys-fs/zfs и sys-fs/zfs-kmod, позволяет автоматически пересобирать их с новым ядром и повторно генерировать initramfs, если это применимо, соответственно!
Ручная пересборка initramfs
При необходимости вручную инициируйте такие перестроения, выполнив после обновления ядра:
root #emerge --ask @module-rebuildЕсли какие-либо из этих модулей (например, ZFS) необходимы при ранней загрузке, после этого пересоберите initramfs::
root #emerge --config sys-kernel/gentoo-kernelЭтот процесс займёт некоторое время.
Теперь установим и сконфигурируем загрузчик grub:
root #emerge grubТеперь установим os-prober:
root #emerge --autounmask-write os-prober grub:2Вместо этого использовать предварительно скомпилированные образы ядра:
root #emerge --ask sys-kernel/gentoo-kernel-binКонфигурация модулей
Модули оборудования не обязательно указывать вручную. В большинстве случаев, udev автоматически загрузит все необходимые модуля для обнаруженных устройств. Однако, не будет никакого вреда, если указать автоматически загружаемые модули вручную. Иногда очень специфическим устройствам необходима некоторая помощь, чтобы загрузить свои драйвера.
Укажите модули, которые должны загружаться автоматически в файлах /etc/modules-load.d/*.conf, по одному модулю в строке. Дополнительные параметры для модулей при необходимости можно указывать в файлах /etc/modprobe.d/*.conf.
Чтобы посмотреть доступные модули, выполните команду find, не забыв заменить «<kernel version>» на собранную в предыдущем шаге версию:
root #find /lib/modules/<kernel version>/ -type f -iname '*.o' -or -iname '*.ko' | lessНапример, чтобы автоматически загрузить модуль 3c59x.ko (драйвер для определённого семейства сетевых карт от 3Com), отредактируйте файл /etc/modules-load.d/network.conf, добавив туда имя модуля. Фактическое имя файла несущественно для загрузчика.
root #mkdir -p /etc/modules-load.droot #nano -w /etc/modules-load.d/network.conf/etc/modules-load.d/network.confПринудительная загрузка модуля 3c59x во время загрузки3c59x
Linux Gentoo fork kernel
Источник:
https://dondub.com/2021/02/gentoo-gnu-linux-ustanovka-i-nastroyka/?ysclid=l0ez63gp79