Определите, какой часовой пояс будет установлен для системы. Просмотрите список всех доступных часовых поясов в каталоге /usr/share/zoneinfo/, затем запишите выбранный в файл /etc/timezone.
root #
ls /usr/share/zoneinfo
OpenRC
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 list
Available kernel symlink targets:
[1] linux-4.9.16-gentoo
In order to create a symbolic link called linux, use:
root #
eselect kernel set 1
root #
ls -l /usr/src/linux
lrwxrwxrwx 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-kernel
Go
Системные администраторы, которые хотят избежать локальной компиляции исходного кода ядра!
Вместо этого использовать предварительно скомпилированные образы ядра:
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.d
root #
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