Wer kennt es nicht, es gibt nen neuen Kernel aber der will ausgerechnet nicht booten. In diesem Fall gibt es genau diese 3 Möglichkeiten(Neuinstallation ist für mich keine Alternative!!!):
- Man hat noch einen älteren, Funktionsfähigen Kernel auf
/boot
- Man sucht im ganzen Haus nach einer CD mit der man chroot machen könnte
- Man hat wie ich eine SystemRescueCD Bootfähig im
/boot
liegen haben
Vorbereitung
- SystemRescueCD Herunterladen
- ISO Image der SystemRescueCD als Loop mounten
sudo mkdir /tmp/sysrcd
sudo mount /pfad/zum/iso/der/systemrescuecd.iso -o loop,ro -t iso9660 /tmp/sysrcd
Installation
Man benötigt von der ganzen CD nur 4 Dateien, das wären:
rescuecd
(der Kernel, auf 64-Bit Systemen sollte manrescue64
nehmen)initram.igz
(die Initial Ramdisk)sysrcd.dat
(Root Dateisystem der SystemRescueCD)sysrcd.md5
(MD5 Prüfsummen der sysrcd.dat)
Der Kernel und die Initial Ramdisk müssen direkt nach /boot
kopiert werden. Für das Rootimage (sysrcd.dat
sowie sysrcd.md5
)
muss man etwas nachdenken:
- Hat man eine extra
/boot
Partition (wie jeder der LVM oder RAID hat) so muss man die Dateien nach/boot/sysrcd
kopieren (Verzeichnis sollte man natürlich anlegen). - Hat man kein extra
/boot
so sollte man es einfach direkt in/boot
kopieren!
Folgende Befehl würde auf einem System mit extra /boot
zum Ziel führen:
sudo -i
mkdir /boot/sysrcd
cp /tmp/sysrcd/isolinux/rescuecd /boot/
cp /tmp/sysrcd/isolinux/initram.igz /boot/
cp /tmp/sysrcd/sysrcd.* /boot/sysrcd/
Hat man ein System ohne extra /boot
wäre es folgendes:
sudo -i
cp /tmp/sysrcd/isolinux/rescuecd /boot/
cp /tmp/sysrcd/isolinux/initram.igz /boot/
cp /tmp/sysrcd/sysrcd.* /boot/
GRUB Konfigurieren
Natürlich könnte man jetzt schon booten, aber sinnvoller ist es schon dafür einen Eintrag im GRUB zu machen, das würde auf
einem System mit extra /boot
Partition so aussehen:
title SystemRescueCD
root (hd0,0)
kernel /rescuecd setkmap=de docache subdir=sysrcd
initrd /initram.igz
Ohne eine extra /boot
Partition sieht es dann so aus:
title SystemRescueCD
root (hd0,0)
kernel /boot/rescuecd setkmap=de docache subdir=boot
initrd /boot/initram.igz
Am besten schreibt man dies ans Ende der /boot/grub/menu.lst
, im Idealfall sogar hinter dieser Zeile damit update-grub
uns keinen Strich
durch die Rechnung macht:
### END DEBIAN AUTOMAGIC KERNELS LIST
Das man die Befehle usw. an seine Eigene Konfiguration anpassen muss, davon gehe ich jetzt einfach mal aus! Wenn man meinen Schnipsel
aus der menu.lst
verwendet hat man automatische ein Deutsches Tastaturlayout und läd das Image in den RAM (auf Systemen mit weniger als
512MB RAM geht das natürlich nicht).