Компиляция ядра — это просто

Рано или поздно пользователь операционной системы GNU/Linux приходит к необходимости сборки ядра. Не миновала эта участь и меня, и делаю я это следующим образом.

Для начала устанавливаю необходимые пакеты:

hp:~# apt-get install kernel-package libncurses5-dev fakeroot wget bzip2 build-essential udev

Затем скачиваю с kernel.org свежую версию ядра. На текущий момент — 2.6.30:

hp:~# cd /usr/src
hp:/usr/src# wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.tar.bz2

Распаковываю архив с исходниками и делаю символическую ссылку на исходники:

hp:/usr/src# tar xjf linux-2.6.30.tar.bz2
hp:/usr/src# ln -s linux-2.6.30 linux
hp:/usr/src# cd linux/
hp:/usr/src/linux#

Теперь нужно сконфигурировать ядро. За основу возьмём уже имеющуюся конфигурацию:

hp:/usr/src/linux# make clean && make mrproper
hp:/usr/src/linux# cp /boot/config-`uname -r` ./.config

Непосредственно конфигурирование запускается так:

hp:/usr/src/linux# make menuconfig

Далее я захожу в General Setup, жму «Local version — append to kernel release» и ввожу там: « -custom «, чтобы однозначно идентифицировать пакет с мною собранным ядром. После завершения конфигурирования, нужно сохранить сделанные настройки. Жму «Save an Alternate Configuration File».

Теперь скомпилируем ядро и соберём его в пакет:

hp:/usr/src/linux# make-kpkg clean
hp:/usr/src/linux# fakeroot make deb-pkg

Процесс этот довольно долгий, можно успеть выпить пару стаканов чая и выкурить пару сигарет, если кто курит.

После завершения компиляции нужно установить пакет и обновить загрузчик, указав ему на наличие нового ядра:

hp:/usr/src/linux# cd ..
hp:/usr/src# dpkg -i linux-2.6.30-custom_2.6.30-custom-1_i386.deb
hp:/usr/src# update-initramfs -c -k 2.6.30-custom
hp:/usr/src# update-grub

На этом всё. Теперь можно перегрузить компьютер и если всё было сделано правильно, в списке доступных ядер будет свежее ядро.

У меня всё получилось, надеюсь и у вас тоже.

remontka@hp:~$ uname -a
Linux hp 2.6.30-custom #1 SMP Wed Jun 17 12:52:06 NOVST 2009 i686 GNU/Linux

Вообще, компиляция нового ядра в отдельных организация является одним из многих действий по обслуживанию пк. Если в вашей организации нет толкового системного администратора или у вас нет времени и желания разбираться в этих вопросах, можно отдать компьютерное обслуживание на аутсорсинг.

EnglishRussianUkrainian