Debian Sarge auf Hetzner DS3000 mit RAID1 auf VIA Chipsatz installieren - Installation des Kernels und des Bootloaders
Dienstag, 25. Dezember 2007
- Nun wollen wir den Kernel und den Bootloader installieren. Obwohl ich ein Fan des Bootloaders GRUB bin, habe ich mich hier der Einfachheit halber für den LinuxLoader lilo entschieden. Aber suchen wir zuerst nach einem passenden Kernelimage:
- root:/# apt-cache search kernel image 2.6 AMD
- kernel-image-2.6-amd64-generic - Linux kernel image for version 2.6 on generic x86_64 systems
kernel-image-2.6-amd64-k8 - Linux kernel image for version 2.6 on AMD64 systems
kernel-image-2.6-amd64-k8-smp - Linux kernel image for version 2.6 on AMD64 SMP systems
kernel-image-2.6-k7 - Linux kernel image for version 2.6 on AMD K7.
kernel-image-2.6-k7-smp - Linux kernel image for version 2.6 on AMD K7 SMP.
kernel-image-2.6.8-11-amd64-generic - Linux kernel image for version 2.6.8 on generic x86_64 systems
kernel-image-2.6.8-11-amd64-k8 - Linux kernel image for version 2.6.8 on AMD64 systems
kernel-image-2.6.8-11-amd64-k8-smp - Linux kernel image for version 2.6.8 on AMD64 SMP systems
kernel-image-2.6.8-2-k7 - Linux kernel image for version 2.6.8 on AMD K7.
kernel-image-2.6.8-2-k7-smp - Linux kernel image for version 2.6.8 on AMD K7 SMP.
- kernel-image-2.6-amd64-generic - Linux kernel image for version 2.6 on generic x86_64 systems
- Da wir nur eine CPU, ohne HyperThreading oder DualCore, haben, ist das Kernelimage kernel-image-2.6-k7 das richtige Image für uns. Dieses Image verweist auf die aktuelle Version dieses Kernels im entsprechenden Debian Tree, so dass wir auch Updates für dieses Paket mit apt-get upgrade installieren können und von apticron über neuere Versionen informiert werden. Das AMD64 Paket nehmen wir nicht, da es Probleme mit iptables macht und laut den Aussagen diverser Forenthreads Nachteile hat, einen solchen Server mit einem 64 Bit Kernel zu fahren.
- Der Installer wird beim Installieren des Kernels und der entsprechenden abhängigen Pakete mit folgender Fehlermeldung herum"meckern":
-
- /usr/sbin/mkinitrd: neither /dev/fd or /proc/self/fd exists!
Try mounting the proc filesystem: mount -tproc none /proc
Failed to create initrd image.
- /usr/sbin/mkinitrd: neither /dev/fd or /proc/self/fd exists!
- Um dieses Porblem zu vermeiden, befolgen wir den Hinweis aus der Fehlermeldung und führen den genannten Befehl schon jetzt aus:
- root:/# mount -tproc none /proc
- Bei der Installation wird immer auch der passende initrd erzeugt, man könnte dies auch händisch mit mkinitrd machen. Installieren wir zuerst das Package initrd-tools, bei der Gelegenheit auch gleich den vim.
- root:/# apt-get install -y initrd-tools vim
- Nun stehen uns die nötigen Konfigurationsfiles zur Verfügung, wir müssen nun angeben, welche Module in den initrd kommen sollen:
- root:/# vim /etc/mkinitrd/modules
-
# /etc/mkinitrd/modules: Kernel modules to load for initrd.
#
# This file should contain the names of kernel modules and their arguments
# (if any) that are needed to mount the root file system, one per line.
# Comments begin with a `#', and everything on the line after them are ignored.
#
# You must run mkinitrd(8) to effect this change.
#
# Examples:
#
# ext2
# wd io=0x300
ext3
jbd
via82cxxx
libata
scsi_mod
sd_mod
sata_via
raid1
md
-
- Beauftragen wir nun apt mit der Installation des Kernel-Images und des Linuxloaders. mdadm und die raidtools2 installieren wir bei dieser Gelegenheit gleich mit:
- root:/# apt-get install kernel-image-2.6-k7 lilo mdadm raidtools2 -y
- Wir bestätigen die nun folgenden Fragen
-
- ...
The following NEW packages will be installed:
cramfsprogs dash kernel-image-2.6-k7 .......... libdevmapper1.01 lilo mdadm
module-init-tools raidtools2
... - in /etc/kernel-img.conf.
Note that this is optional, but if you do not,
you will continue to see this message whenever you install a kernel
image using initrd.
Do you want to stop now? [Y/n]
- ...
- Wir bestätigen durch Eingabe von N, dass wir fortfahren wollen.
-
- ...
Do you want me to create a link from /boot/initrd.img-2.6.8-..... to initrd.img?[Yn]
- ...
- Wir bestätigen durch Eingabe von Y, dass der Link erzeugt werden soll.
- ...
Do you wish to set up Linux to boot from the hard disk? [Yes] No
- ...
-
Hier geben wir "No" ein, da wir erst noch die lilo.conf erzeugen müssen. Bei Eingabe von "Yes" würde der Installer eine für uns unpassende lilo.conf erzeugen.
- ...
Errors were encountered while processing:
lilo
E: Sub-process /usr/bin/dpkg returned an error code (1)
- ...
- Den Fehler ignorieren wir vorerst, er wird sich später im frisch gebooteten System von selbst erledigen.
- Nun müssen wir noch den LinuxLoader lilo einrichten. Die automatische Konfiguration würde an unseren RAID-Arrays scheitern, außer möchten wir lilo gleich so einrichten, dass wir den Bootvorgang an der seriellen Konsole beobachten können. Die Datei /etc/lilo.conf soll so aussehen:
- root:/# vi /etc/lilo.conf
-
boot=/dev/sda
root=/dev/md1
compact
install=/boot/boot.b
map=/boot/map
vga=normal
delay=20
image=/vmlinuz
append="console=tty0 console=ttyS0,57600"
label = Linux read-only
initrd=/initrd.img
-
- Die anfangs besprochene optionale Installation auf sdb übergehen wir hier.
- Nachdem wir nun die Konfiguration des lilo fertiggestellt haben, installieren wir lilo:
- root:/# lilo
- Warning: COMPACT may conflict with LBA32 on some systems
Warning: '/proc/partitions' does not match '/dev' directory structure.
Name change: '/dev/md/0' -> '/dev/md0'
Added Linux *
- Warning: COMPACT may conflict with LBA32 on some systems
- Wir nähern uns unaufhaltsam dem ersten Boot in das neue System, wollen aber auf der nächsten Seite noch ein paar Konfigurationen vornehmen.

