Сборка и установка ядра Linux

Материал из Wiki семьи Белых
Версия от 16:30, 6 апреля 2018; Yamah (обсуждение | вклад) (1 версия импортирована)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Как правило ядро для дистрибутива с бинарными пакетами уже собрано и ничего пересобирать не нужно.

Получение исходного кода

для получения исходного кода ядра нужно поставить из репозитория дистрибутива пакеты kernel-headers, kernel-devel, kernel-source.

Ванильное ядро

Вани́льное ядро́ (vanilla kernel, mainline kernel) — термин, которым называют оригинальную версию ядра Linux, в которую не было внесено изменений по сравнению с kernel.org.

Ядро можно взять на официальном сайте kernel.org или же ставится пакет kernel-source-vanilia из репозитория дистрибутива

Ручная сборка

Необходимо перейти в каталог /usr/src/linux-<Version>

Чистка

Если вы уже собирали ядро из этого каталога, то перед следующей сборкой нужно очистить

make mrproper

предварительно можно сохранить файл.config

Настройка ядра

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

  1. make xconfig
    настройка в графическом режиме
  2. make menuconfig
    настройка в текстовом режиме
  3. make config
    настройка в диалоговом режиме
  4. make oldconfig
    настройка в диалоговом режиме, только будут вопросы по новым параметрам, которых не было в старом конфиге.

Сборка

Теперь осталось собрать ядро. Процесс сборки и установки ядра можно выполнить одной командой (от пользователя root)

make bzImage modules modules_install install

а можно разбить на несколько этапов

от простого пользователя:

make bzImage

(собрать ядро)

make modules

(собрать модули)

от пользователя root:

make modules_install

(установить модули)

make install

(установить ядро)

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

от простого пользователя:

make bzImage modules

от root:

make modules_install install

Или же от простого пользователя:

make 
su
make modules_install install