Собираем ванильное ядро в Debian

Debian стабильный, ровный дистрибутив, но за стабильность приходится платить версией ПО, а с новым железом иногда получается так, что ядро старее этого железа, и тогда могут появляться «чудеса». Debian предоставляет средства для, идеологически правильной, установки любой версии ядра через deb-пакет, предварительно собранный в полу-автоматическом режиме. Далее привожу небольшую шпаргалку по сему действу.


Установим набор утилит для сборки deb-пакета ядра

# apt-get install kernel-package libncurses5-dev fakeroot wget bzip2

Скачаеем и распакуем желаемую вресию ядра, например актуальную на момент написания этого текса — 2.6.32.1

# cd /usr/src
# wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.32.1.tar.bz2
# tar xjf linux-2.6.32.1.tar.bz2
# cd linux-2.6.32.1/

Скопируем конфиг текущего ядра

# cp /boot/config-`uname -r` .config

Подредактируем конфиг в случае необходимости, соберем и установим пакет

# make clean
# make menuconfig
# make-kpkg clean
# fakeroot make-kpkg --initrd --revision=handmade1 kernel_image kernel_headers
# dpkg -i /usr/src/linux-image-*.deb
# dpkg -i /usr/src/linux-headers-*.deb

Теперь создадим initrd для нового ядра

# cd /boot
# mkinitramfs -o /boot/initrd.img-2.6.32.1 2.6.32.1

Сообщим загрузчику о только что созданном initrd, например для grub в файле /boot/grub/menu.lst добавим к строкам касательно собранного ядра

initrd          /initrd.img-2.6.32.1

Все, можно перезагружаться в новое ядро