Debian 9,10. Сборка ядра: различия между версиями

Материал из Wiki
Перейти к навигации Перейти к поиску
м (Cless переименовал страницу Debian. Сборка ядра в Debian 9,10. Сборка ядра без оставления перенаправления)
Строка 105: Строка 105:
  Linux debian10-test01 4.19.152-customkernel #1 SMP Sat Oct 31 13:33:44 EDT 2020 x86_64 GNU/Linux
  Linux debian10-test01 4.19.152-customkernel #1 SMP Sat Oct 31 13:33:44 EDT 2020 x86_64 GNU/Linux
  ...
  ...
[[Категория:Инструкции]]
[[Категория:Инструкции]]
[[Категория:Linux]]
[[Категория:Linux]]
__ОБЯЗАТЕЛЬНОЕ_ОГЛАВЛЕНИЕ__
__ОБЯЗАТЕЛЬНОЕ_ОГЛАВЛЕНИЕ__
[[Категория:Debian]]

Версия 20:27, 10 мая 2022

Ссылки

https://dev-cs.ru/threads/5928/

Сборка ядра

Ставим необходимые пакеты

apt install -y fakeroot make gcc flex libncurses5-dev bison build-essential libelf-dev libssl-dev

Получаем исходники ядра

Ищем последний релиз исходников ядра и устанавливаем

apt search linux-source

apt install linux-source-4.9

Пакет установился в папку /usr/src

ls /usr/src

...
linux-config-4.9  linux-patch-4.9-rt.patch.xz  linux-source-4.9.tar.xz
...

Разархивируем

tar -xvf /usr/src/linux-source-4.9.tar.xz

Проходим в директорию с исходниками

cd /usr/src/linux-source-4.9/

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

Вариант 1. Копирование настроек из текущего ядра

Копируем настройки текущего ядра в директорию с исходниками нового

cp /boot/config-4.9.0-8-amd64 ./.config

Очищаем настройки сертификатов (иначе при компиляции будет ошибка)

nano ./.config

...
CONFIG_SYSTEM_TRUSTED_KEYS=""
...

Вариант 2. Дефолтные настройки ядра

Приведем конфиг к умолчальному

make olddefconfig - все вопросы получат ответ по умолчанию, если вы хотите настроить вручную - воспользуйтесь командой make oldconfig

make olddefconfig

Очищаем настройки сертификатов (иначе при компиляции будет ошибка)

nano ./.config

...
CONFIG_SYSTEM_TRUSTED_KEYS=""
...

Правим настройки ядра

make menuconfig

Далее Save и Exit

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

make clean

Следующая команда позволит собрать пакет. Процес очень долгий

make deb-pkg LOCALVERSION=-customkernel KDEB_PKGVERSION=$(make kernelversion)-1

Смотрим названия файлов

ls /usr/src/

Устанавливаем ядро

dpkg -i /usr/src/linux-image-4.19.152-customkernel_4.19.152-1_amd64.deb

...
Selecting previously unselected package linux-image-4.19.152-customkernel.
(Reading database ... 50106 files and directories currently installed.)
Preparing to unpack .../linux-image-4.19.152-customkernel_4.19.152-1_amd64.deb ...
Unpacking linux-image-4.19.152-customkernel (4.19.152-1) ...
Setting up linux-image-4.19.152-customkernel (4.19.152-1) ...
update-initramfs: Generating /boot/initrd.img-4.19.152-customkernel
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.19.152-customkernel
Found initrd image: /boot/initrd.img-4.19.152-customkernel
Found linux image: /boot/vmlinuz-4.19.0-12-amd64
Found initrd image: /boot/initrd.img-4.19.0-12-amd64
Found linux image: /boot/vmlinuz-4.19.0-11-amd64
Found initrd image: /boot/initrd.img-4.19.0-11-amd64
done
...

Создадутся файлы

/boot/vmlinuz-4.19.152-customkernel

/boot/initrd.img-4.19.152-customkernel

Новое ядро пропишется в /boot/grub/grub.cfg

reboot

uname -a

...
Linux debian10-test01 4.19.152-customkernel #1 SMP Sat Oct 31 13:33:44 EDT 2020 x86_64 GNU/Linux
...