Debian 9,10. Сборка ядра
Ссылки
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 ...