Этим способом вы можете всегда иметь самое свежее ядро Zen не дожидаясь ни каких ebuild-ов, и при этом оно будет оптимизированно под вашу систему, что ощутимо скажется на скорости.
Качаем свежее ядро с Git.
cd /usr/src/
git clone --depth 1 https://github.com/zen-kernel/zen-kernel.git linux-zen
Делаем линк.
ln -s linux-zen linux
Вы скажете что все это можно сделать добавив оверлей “THE”,или использовать версию “9999”
layman -a THE
(На данный момент, оба способа, не работают.)
Теперь нужно сконфигурировать ядро.
Есть очень приятный скрипт в ядре - make localmodconfig
. Особенно он приятен на ядре Calculate т.к. ребята стараются все опции сделать модулями. Нам это на руку, во всех смыслах. Он сканирует загруженные модули в системе и вписывает их в ядро. Если вы не желаете использовать initrd
( дальше пойдет инструкция без него) то воспользуйтесь командой - make localyesconfig
, автоматом будет все отключено связанное с initrd
.
После того как мы ушли от inird
, нам придется перейти на фреймбуфер vesabf
, вместо uvesafb
, потому что он работает в паре с initrd
. Либо оставить initrd
с uvesafb
и воспользоваться этим HOW-TO
Для этого нужно изменить в ядре некоторые опции:
make nconfig
Включаем vesafb
:
Device Drivers ->
<*> Connector - unified userspace <-> kernelspace linker --->
Graphics support ->
[*] Support for frame buffer devices --->
[*] Enable firmware EDID
...
[*] VESA VGA graphics support
И выключаем uvesafb
:
Device Drivers ->
<*> Connector - unified userspace <-> kernelspace linker --->
Graphics support ->
[*] Support for frame buffer devices --->
[*] Enable firmware EDID
...
<*> Userspace VESA VGA graphics support
Более подробно на WiKi.
Здесь все вкусности Zen-Kernel которые можно включить.
И еще раз просматриваем свои устройства что бы все на верочку
make nconfig
Следующий шаг сборка:
make modules modules_install bzImage
Когда ядро соберется скопируем его в boot
:
cp arch/x86/boot/bzImage /boot/Zen-2.6.39.1
Пересобирем все внешние модули:
module-rebuild -X rebuild
Следующий шаг это правка menu.list
, настройка grub. Просто добавляем туда новые строки.
Вот мой пример Grub:
cat /boot/grub/menu.list
title Calculate Linux Desktop AMD64 11.0 KDE Zen-Kernel-2.6.39
root (hd0,5)
kernel /boot/Zen-2.6.39.1 root=/dev/sda6 video=vesafb:mtrr:3,ywrap vga=0x319,udev quiet resume=/dev/sda5 elevator=cfq doscsi
Grub2
menuentry "Calculate Linux Desktop AMD64 11.0 KDE Zen-Kernel-2.6.39" {
insmod part_msdos
insmod reiserfs
set root='(hd0,msdos6)'
linux /boot/Gen-2.6.39.1 root=/dev/sda6 video=vesafb:mtrr:3,ywrap vga=0x319,mtrr:3,ywrap,udev quiet resume=/dev/sda5 elevator=cfq doscsi
}
Подставляем свои разделы, просмотреть их можно так:
fdisk -l
Или подсмотрев текущие параметры.
Не забываем что Grub считает разделы как /dev/sda1=(hd0,0)
и так далее. Grub2 читает один к одному.
Теперь можно смело в reboot
.
После этих манипуляций загрузка ядра ускоряется в разы. При всем этом, мы ни чем не рискуем. Можно всегда загрузится с рабочего ядра.
Применять этот рецепт можно к любым вариациям ядра. Как вы успели заметить, что все довольно просто и быстро и не требует много времени и действий.