Регистрация Вход
Библиотека /
Поиск по библиотекеМоя библиотекаИскать книгу(обмен)

Компилирование ядра Linux

Компилирование ядра Linux


Установка патчей в ядро


Раньше ядро должно было располагаться в каталоге /usr/src/linux cd /usr/src zcat /path/to/patch-1.2.31.gz | patch -s -p0 zcat /path/to/patch-1.2.32.gz | patch -s -p0 Теперь ядро должно располагаться в каталоге /usr/src/linux-2.4.{version_number} cd /usr/src ln -s linux linux-2.4.18 bzcat /path/to/patch-2.4.19.bz2 | patch -s -p0 ln -s linux linux-2.4.19 bzcat /path/to/patch-2.4.20.bz2 | patch -s -p0 . . .

Чтоб ядро перекомпилировать нужно


cd /usr/src/linux make xconfig # в графическом режиме или make config # в текстовом режиме заполнить в графическом режиме параметры и выбрать нужные драверы make dep ; make clean ; MAKE='make -j2' make -j2 make zlilo или, если ядро получилось слишком большим make bzlilo возможно придется сделать команду cp /vmlinux /boot/vmlinuz lilo

Как увеличить скорость компиляции на SMP-машине


MAKE='make -j2' make -j2 # -j задает максимальное количество параллельных jobs

Как задать свою версию в ядре


vi /usr/src/linux/Makefile VERSION = 2 PATCHLEVEL = 4 SUBLEVEL = 18 EXTRAVERSION = YouNameIt

Как воспроизвести дефолтные установки дистрибутивного ядра


cd /usr/src/linux cp /boot/config-2.6.18-3 /usr/src/linux/.config make silentoldconfig ### make oldconfig make xconfig MAKE='make -j2' make -j2 # -j задает максимальное количество параллельных jobs

Компиляция и установка модулей


cd /usr/src/linux make modules # в 2.6-й версии не нужен make modules_инсталл ls -l /lib/modules/2.4.18-3-YouNameIt

Изготовление init-ram-диска


Исполнять после инсталляции модулей: mkinitrd -f /boot/initrd-2.4.18-3-YourNameIt 2.4.18-3-YourNameIt

Конфигурация lilo


vi /etc/lilo ############################################################### image=/boot/vmlinuz-2.4.18-YouNameIt label=new initrd=/boot/initrd-YouNameIt read-only root=/dev/hda2 append="hdc=ide-scsi" ############################################################### lilo

Компилирование ядра Linux


# cd /usr/src/linux/ # make xconfig или # make { menuconfig | config } Смысл конфигурационных параметров ядра разъясняется здесь # make dep # make clean # make bzlilo # make modules # make modules_install # reboot Это все.

Компилирование ядра с поддержкой автозагрузки модулей


0) cd /usr/src/linux 1) make menuconfig Where I enable the features I want as odules (for vfat support you should answer M for FAT and VFAT) Besides, the kernel must be compiled with modversion and kerneld support enabled.(This is the second submenu in the config - select all the 3 items). 2) make install At the end the old kernel (if it's /vmlinuz) will be renamed /vmlinuz.old and the new will be /vmlinuz. This option calls the script /usr/src/linux/arch/i386/boot/install.sh which does the above renaming and runs lilo.If you don't want lilo just comment out the last line in that script. 3) make modules 4) rm /lib/modules/2.0.0 (or move to another location) 5) make modules_install 6) VERY IMPORTANT to make linux boot the new kernel. If you use lilo do not edit /usr/src/linux/arch/i386/boot/install.sh, it will install it automaticly,if not then you are using either loadlin or bootdisk.Either way update your bootdisk or loadlin kernel (on your dos partition I guess). 7) Reboot linux.

Параметры ядра


# просмотр: sysctl -a | grep tcp # просмотр cat /proc/sys/net/ipv4/tcp_max_syn_backlog sysctl net.ipv4.tcp_max_syn_backlog # установка значения sysctl -w net.ipv4.tcp_max_syn_backlog=1024 # установка значений при загрузке /etc/sysctl.conf net.ipv4.tcp_max_syn_backlog = 1024

Наша библиотека является официальным зеркалом библиотеки Максима Мошкова lib.ru

Реклама