Сборка Linux ядра

Материал из Энциклопедия Хаб.ру
Перейти к: навигация, поиск

Содержание

Сборка Linux ядра

Как скомпилировать ядро - Debian/Ubuntu way

Для сборки нужен gcc, make, fakeroot, libncurses5-dev и kernel-package

Инсталляция:

apt-get install "gcc make kernel-package libncurses5-dev fakeroot"

В процессе инсталляции ядро скачивается, распаковывается, при необходимости накладываются дополнительные патчи.

Конфигурация ядра:

make menuconfig #варианты oldconfig/xconfig

Полная чистка перед пересборкой

make-kpkg clean

Собственно сборка deb пакетов ядра

fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers kernel_doc
Ключ --append-to-version=-custom не обязателен, можно также поправить EXTRAVERSION в корневом Makefile исходников ядра

Для Убунту Hardy 8.04(?) каталог debian для сборки ядра формируется из файлов в папке: /usr/share/kernel-package/

После сборки готовые deb пакеты можно инсталлировать с помощью утилиты dpkg. При необходимости следует поправить /boot/grub/menu.lst , прописав туда новое ядро.

Cборка ядра openvz для ubuntu 10.04 lucid

Сборка руками:

fakeroot make -f debian/rules.gen binary-arch_amd64_openvz
fakeroot make -f debian/rules.gen binary-arch_amd64

В сборочной системе:

CONCURRENCY_LEVEL=14 make-kpkg --rootcmd fakeroot --initrd --append-to-version=-custom kernel_image kernel_headers kernel_doc
 
wget kernel-2.6.32-x86_64.config.ovz
wget http://download.openvz.org/kernel/branches/2.6.32/2.6.32-dzhanibekov.1/configs/kernel-2.6.32-x86_64.config.ovz
 
tar xvfj linux-2.6.32.tar.bz2
mv linux-2.6.32 linux-2.6.32-openvz
ln -s linux linux-2.6.32-openvz
cd linux
gunzip -dc ../patch-dzhanibekov.1-combined.gz | patch -p1
cp ../kernel-2.6.32-x86_64.config.ovz .config
make oldconfig
Generic Driver Options  --->
  -> Device Drivers
    -> Block devices (BLK_DEV [=y])
      <*>   Compaq SMART2 support
      <*>   Compaq Smart Array 5xxx support
fakeroot make-kpkg --initrd --append-to-version=-ovz32 --revision=1.0 kernel_image kernel_headers
 
scp /var/cache/apt/archives/linux-base_2.6.32-15_all.deb abraham1901@10.11.110.9:~/
scp linux-headers-2.6.32.25-ovz32_1.0_amd64.deb  abraham1901@10.11.110.9:~/
scp linux-image-2.6.32.25-ovz32_1.0_amd64.deb abraham1901@10.11.110.9:~/
 
update-initramfs -c -k '2.6.32.25-ovz32'

Внешние ссылки

OpenVZ в ubuntu 10.04

Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Инструменты