Handbook:Parts/Installation/Kernel/Dist-Kernel/ru
Distribution-ядра
Distribution Kernels — это ebuild-файлы, которые охватывают полный процесс распаковки, конфигурирования, компиляции и установки ядра. Основным преимуществом этого метода является то, что ядра обновляются до новых версий менеджером пакетов во время обновления @world. Для этого используется только команда emerge. Distribution-ядра по умолчанию сконфигурированы для поддержки большинства оборудования, для более тонкой настройки предлагаются два механизма: saveconfig и сниппеты конфигурации. Смотрите страницу проекта для более подробной информации о конфигурации.
Установка подходящего пакета installkernel
Перед использованием distribution-ядер убедитесь, что установлен подходящий для системы пакет installkernel. При использовании systemd-boot (ранее gummiboot) в качестве загрузчика, установите:
root #
emerge --ask sys-kernel/installkernel-systemd-boot
При использовании традиционной схемы /boot (например, GRUB, LILO и т.д.), вариант gentoo должен быть установлен по умолчанию. Если вы не уверены:
root #
emerge --ask sys-kernel/installkernel-gentoo
Установка distribution-ядра
Чтобы собрать ядро из исходного кода с патчами Gentoo, введите:
root #
emerge --ask sys-kernel/gentoo-kernel
Администраторы систем, которые хотят избежать сборки ядра из исходных текстов на компьютере, могут вместо этого использовать предварительно скомпилированные образы ядра:
root #
emerge --ask sys-kernel/gentoo-kernel-bin
Обновление и очистка
После установки ядра менеджер пакетов будет автоматически обновлять его до более новых версий. Предыдущие версии будут храниться до тех пор, пока менеджер пакетов не получит запрос на очистку устаревших пакетов. Чтобы освободить место на диске, устаревшие пакеты можно удалить, периодически запуская emerge с опцией --depclean
:
root #
emerge --depclean
Также можно удалить именно устаревшие ядра:
root #
emerge --prune sys-kernel/gentoo-kernel sys-kernel/gentoo-kernel-bin
Задачи после установки/обновления
Distribution-ядра способны пересобирать модули ядра, установленные другими пакетами. linux-mod.eclass предоставляет USE-флаг dist-kernel
, который управляет зависимостью от подслота virtual/dist-kernel.
Включение этого USE-флага для таких пакетов, как sys-fs/zfs и sys-fs/zfs-kmod позволит им автоматически пересобираться в соответствии с обновленным ядром и, в случае необходимости, пересобирать initramfs.
Ручная пересборка initramfs
Если понадобится, вручную запустите перестройку, выполнив после обновления ядра команду:
root #
emerge --ask @module-rebuild
Если какой-то модуль ядра (например, ZFS) необходим при ранней загрузке, пересоберите initramfs при помощи:
root #
emerge --config sys-kernel/gentoo-kernel
root #
emerge --config sys-kernel/gentoo-kernel-bin