Autor: sledge0303
Stand: 10.04.2008
Version: 1.0A
In diesem Howto wird erklärt, wie man sich trotz Nutzung eines Servers mit Gentoo 2007 aus OVH Images einen Kernel selbst bauen kann.
Für RPS die gesonderten Anweisungen beachten!!!
emerge --sync emerge portage
Installation der Sourcen
emerge gentoo-sources
Wir wechseln in das Verzeichnis von den Kernelsourcen rein
cd /usr/src/linux
Wenn du eine aktuelle Config benötigst, benutze die alte oder erstelle eine mit Hilfe der Ausgabe von lspci und lsmod.
Alternativ kannst Du auch die originale Konfiguration von OVH nehmen:
wget ftp://ftp.ovh.net/made-in-ovh/bzImage/2.6-config-xxxx-std-ipv4-32 mv 2.6-config-xxxx-std-ipv4-32 .config
Dann gehst du in die .config rein, suchst diese Zeile
CONFIG_LOCALVERSION="-xxxx-std-ipv4-32"
und änderst diese um in
CONFIG_LOCALVERSION=""
make menuconfig
jetzt schaust du nach ob deine komplette Hardware oder gewünschten Funktionen aktiviert wurden und speicherst anschließend ab indem du das Menu verläßt.
Bei einer Intel Pro/1000 ist mit Kernel 2.6.24 kein Patch mehr notwendig. Du musst allerdings den PCI-Express Treiber aktivieren!
CONFIG_E1000=y CONFIG_E1000_NAPI=y # CONFIG_E1000_DISABLE_PACKET_SPLIT is not set CONFIG_E1000E=y
Wir installieren den Kernel:
make && make install
Mit aktivierten Modulen:
make && make modules_install && make install
Die Kompilierung ist abgeschlossen und nun muss der Bootloader lilo angepasst werden.
nano /etc/lilo.conf
Der Bootloader sollte so aussegen, solltest du eine andere Rootdevice sowie IDE Platten besitzen, passe diese dementsprechend an.
«< 100% round red|DEDIZIERTER SERVER /etc/lilo.conf :::
cat > /etc/lilo.conf << "EOF"
prompt
timeout=50
default=linux
boot=/dev/sda
map=/boot/System.map
install=/boot/boot.b
lba32
append=""
serial=0,9600n8
image=/boot/vmlinuz
label=linux
read-only
root=/dev/sda1
EOF
::: »>
«< 100% round blue| RPS /etc/lilo.conf :::
cat > /etc/lilo.conf << "EOF"
prompt
timeout=50
default=linux
boot=/dev/sda
map=/boot/System.map
install=/boot/boot.b
lba32
append=""
serial=0,9600n8
image=/boot/vmlinuz
label=linux
read-only
root=/dev/ram0
initrd=/initrd-iscsi.img
EOF
::: »>
/sbin/lilo
Jetzt solltest du deine Arbeit abgeschlossen haben und dem Reboot des Servers steht nichts mehr im weg.
Du solltest ohnehin mindestens einmal die Woche dein System aktualisieren. Werden neue Kernelsourcen frei gegeben von Gentoo, kannst du diese einfach installieren. Der Vorteil ist, du brauchst nach dem Kompilieren nicht mehr die lilo.conf bearbeiten, der neue Kernel wird automatisch verlinkt mit 'vmlinuz' bzw. 'System.map'.
Hierbei handelt es sich um eine optionale Möglichkeit LILO gegen GRUB auszutauschen.
emerge -C lilo
emerge grub grub-install /dev/sda
«< 100% round red| DEDIZIERTER /boot/grub/menu.conf :::
cat > /boot/grub/grub.conf << "EOF" timeout 5 default 0 title=Gentoo Linux root (hd0,0) kernel /boot/vmlinuz root=/dev/sda1 noapic EOF
::: »> «< 100% round blue| RPS /boot/grub/grub.conf :::
cat > /boot/grub/grub.conf << "EOF" timeout 5 default 0 title=Gentoo Linux root (hd0,0) kernel /boot/vmlinuz root=/dev/ram0 initrd /initrd-iscsi.img EOF
::: »>
Anschließend kann der Server neu gestartet werden.