Handbook:Parts/Installation/Kernel/ru

Установка исходного кода
Все дистрибутивы строятся вокруг ядра Linux. Ядро является прослойкой между пользовательским программным обеспечением и физическим оборудованием. Gentoo предоставляет несколько вариантов исходного кода ядра. Полный список с описанием доступен в статье общие сведения о ядре.

Для систем, основанных на архитектуре, рекомендуется пакет.

Выберем подходящий исходный код ядра и установим с помощью :

Данная команда установит исходный код ядра Linux в, в котором символьная ссылка будет указывать на установленную версию:

Теперь следует собрать и установить ядро. Здесь существует два основных подхода:


 * 1) Ядро настраивается и собирается вручную.
 * 2) Утилита  собирает и устанавливает его автоматически.

В данной инструкции мы расскажем, как провести настройку вручную, поскольку это лучший способ оптимизировать окружение.

Введение
Согласно расхожему мнению, настройка ядра- наиболее сложная процедура, с которой сталкивается пользователь Линукса. Это сильное преувеличение и собрав пару-тройку ядер никто и не вспомнит, что это было сложно.

Но один факт учитывать стоит. Для ручной настройки ядра необходимо иметь представление о том, из чего у вас собран компьютер. Большую часть можно узнать, установив и выполнив команду :

Другой источник информации о системе можно получить, выполнив и посмотрев, какие модули ядра подгрузились на установочном носителе.

Остаётся перейти в директорию с ядром и выполнить. Нас поприветствует экран конфигурации.

У ядра Линукса много-много секций. Сначала пройдёмся по самым основным, без которых Gentoo будет работать неправильно или же вовсе не запустится. Для более глубокого ознакомления стоит посетить гайд по настройке ядра Gentoo.

Включаем обязательные опции
Убедитесь, что драйверы, необходимые для загрузки системы (например, контроллер SCSI) собраны прямо в ядре, а не как модуль. В противном случае, система может не загрузиться полностью.

Следует выбрать тип процессора, а так же рекоммендуется включить опции MCE, чтобы получать информацию о проблемах с "железом". На некоторых архитектурах (например, x86_64) подобные ошибки выводятся не в dmesg, а. Так что понадобится пакет.

Активируйте опцию Maintain a devtmpfs file system to mount at /dev, тогда критичные для устройств файлы будут подгружаться как можно раньше.

Дальше стоит включить поддержку используемых Вами файловых систем. Рутовая ФС должна быть включена в ядро, а не подгружена в качестве модуля, иначе Gentoo не сможет примонтировать данный раздел. Не забудьте также включить Virtual memory и /proc file system.

Если для подключения к сети интернет вы используете PPPoE или dial-up модем, то Вам понадобятся следующие параметры:

Опции сжатия не повредят, но и не являются обязательными, как и PPP over Ethernet. Фактически, последний используется только когда ppp сконфигурирован на использование PPPoE режима ядра.

Не забудьте настроить поддержку сетевых карт (кабельных и беспроводных).

Поскольку большинство современных систем являются многоядерными, нам понадобится Symmetric multi-processing support:

Если вы используете USB устройства ввода (например клавиатуру и мышь), то и они должны быть отмечены:

Опционально: Собираем initramfs
В некоторых случаях необходимо включить поддержку initramfs - an initial ram-based file system (файловая система, основанная на оперативной памяти). Наиболее распространённая причина это нахождение различных системных путей (вроде или ) на различных разделах. При наличии initramfs эти разделы могут быть подгружены средствами initramfs.

Без initramfs существует вероятность неправильной загрузки, так как для запуска некоторых ФС может потребоваться информация на этих самых разделах. Initramfs подгружает всю информацию в небольшой архив, который читается сразу после загрузки ядра, но до передачи управления службам инициализации. Таким образом набор скриптов initramfs проследит, чтобы все разделы были примонтированы верно перед продолжением процесса загрузки.

Для установки initramfs, сперва нужен, который его сгенерирует:

Если необходима поддержка lvm или raid, то следует указать это в конфиге. Для более подробной инструкции выполните. В данном руководстве мы включим поддержку LVM и програмного raid (mdadm):

Initramfs будет расположен в. Можно посмотреть файлы, начинающиеся с "initramfs":

Продолжим с Модули ядра.

Альтернативно: Используя genkernel
Если ручная установка кажется Вам слишком сложной, то следует воспользоваться утилитой, которая настроит и соберет ядро автоматически.

конфигурирует ядро примерно так же, как в установочном носителе. Таким образом, ядро, сконфигурированное постарается определить оборудование в процессе загрузки. Поскольку данный процесс не требует вмешательства пользователя, он рекомендован для тех, кто не готов собирать собственное ядро.

Приступим. Сперва, нужно установить :

Затем следует правка, где следует указать в строке правильное устройство во втором поле. Если Вы следовали примеру из данной инструкции, то, скорее всего, у Вас с файловой системой ext2 и строка должна выгляжеть следующим образом:

Осталось скомпиллировать ядро, выполнив. Учтите, что поскольку включает поддержку как можно большего диапазона оборудования, процесс сборки может занять некоторое время.

По завершению мы получим полный набор модулей и initramfs. Ядро и initrd нам ещё понадобятся при настройке загрузчика. Запишите название файлов ядра и initrd, так как они нам ещё понадобятся. Initrd запускается сразу после ядра для определения оборудования, перед запуском самой системы.

Настройка модулей
Укажите модули, которые должны подгружаться автоматически в. При необходимости можно добавить модулям дополнительные опции.

Чтобы посмотреть доступные модули, выполните команду, не забыв заменить " " на собранную в предыдущем шаге версию:

Например, чтобы автоматически подгрузить модуль (драйвер для определённой семьи интернет-карт от 3Com), добавте его в.

Продолжим установку с Настройка системы.

Опционально: Установка файлов прошивки
Для корректной работы некоторых драйверов требуется установка дополнительных файлов прошивки. Часто подобное требуется для сетевых интерфейсов, особенно беспроводных. Большинство файлов прошивки поставляется в :