Информация актуальна для Debian 4.0 (Etch), но скорее всего будет полезна и для более новых дистрибутивов. Действия следует выполнять от пользователя с uid=0, например от root.
Весь процесс можно разбить на ряд последовательных пунктов:
1. Устанавливаем необходимое окружение для компиляции ядра:
$ apt-get install debhelper modutils kernel-package libncurses5-dev fakeroot
2. Скачиваем необходимую версию ядра(как правило самую свежую) с kernel.org и кладем ее в /usr/src/. Скачивать можно любым способом, хоть браузером, привожу пример для консоли:
$ cd /usr/src/
$ wget
http://www.kernel.org/pub/linux/kernel/ ... 25.tar.bz2
3. Распаковываем архив с помощью любого любимого архиватора:
$ tar jxvf linux-2.6.25.tar.bz2
Должна появиться директория /usr/src/linux-2.6.25
4. Для того чтобы не настраиваить с нуля все ядро можно скопировать настройки от старого(это файл “config-*” в /boot/) и поместить их в /usr/src/linux-2.6.25/.config.
$ сp /boot/config-2.6.18-5-486 /usr/src/linux-2.6.25/.config
Редактируем настройки нового ядра с помощью menuconfig:
$ cd /usr/src/linux-2.6
$ make menuconfig
По окончании редактирования не забудьте сохранить результат в .config. Программа спросит Вас об этом при выходе.
5. Выполняем последовательно:
$ make-kpkg clean
$ fakeroot make-kpkg –initrd –revision=01 kernel_image kernel_headers kernel_source
После окончания длительного процесса компиляции(на моем Celeron M 1,5GHz это длится около часа) в диреткории /usr/src у Вас должны появиться 3 файла-пакета:
Само ядро: linux-image-2.6.25_01_i386.deb
Заголовки ядра: linux-headers-2.6.25_01_i386.deb
Исходники ядра: linux-source-2.6.25_01_all.deb
6. Установка:
$ cd /usr/src/
$ dpkg -i linux-image-2.6.25_01_i386.deb
На случай если понадобится компилировать сторонние модуля, например для VirtualBox или VmWare Server, можно поставить заголовки и исходники:
$ dpkg -i linux-headers-2.6.25_01_i386.deb
$ dpkg -i linux-source-2.6.25_01_all.deb
После установки, во время загрузки компьютера, у Вас будет возможность выбрать какое ядро загружать. Этот список редактируется в /boot/grub/menu.lst