Установка необходимых пакетов для сборки ядра
sudo apt-get install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc -y
sudo apt-get install kernel-packages -y
Скачиваем нужную версию ядра. В примере будет показано на примере 4.9
wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.9.tar.sign
wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.9.tar.xz
Далее распаковываем и проверяем ключ
unxz linux-4.9.tar.xz
gpg --verify linux-4.9.tar.sign
gpg --keyserver hkp://keys.gnupg.net --recv-keys 00411886
gpg --verify linux-4.9.tar.sign
Видим:
gpg: assuming signed data in `linux-4.9.tar' gpg: Signature made Monday 12 December 2016 01:38:31 AM IST using RSA key ID 00411886 gpg: Good signature from "Linus Torvalds" gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: ABAF 11C6 5A29 70B1 30AB E3C4 79BE 3E43 0041 1886
Ok. Идем далее.
Настраиваем ядро Linux и компилируем его
cd linux-4.9 cp /boot/config-$(uname -r) .config
Выбираем доступные опции
make menuconfig
Появиться окно в котором можно сконфигурировать поддержку необходимых опций и устройств с помощью выбора пунктов
Выбираем что надо – делаем save и exit.
Компилиция ядра
make-kpkg clean fakeroot make-kpkg --initrd --revision=1.0.NAS kernel_image kernel_headers -j 10
Ждем по времени – 1 час
ls ../*.deb sudo dpkg -i linux-headers-4.9.0_1.0.NAS_amd64.deb sudo dpkg -i linux-image-4.9.0_1.0.NAS_amd64.deb