====== System-Rettung ====== ===== mit BootCD ===== Für den Falle, dass das System auf der Platte noch vorhanden ist und nur nicht mehr so weit hoch fährt, dass man sich einloggen kann. - Vorbereitungen: - von der Installations-CD booten; - in diesem Beispiel: ''Ubuntu 10.04 LTS Server'' - alle Abfragen zu den Spracheinstellungen durchgehen, bist zur Abfrage des Hostnamens, hier stehen bleiben; - auf eine freie Konsole wechseln, da wir die Spracheinstellungen durchlaufen haben, haben wir hier auch eine deutsche Tastatur; - z.B.: ''[Strg]+[Alt]+[F2]'' - nachsehen ob die Root-Partition auch erkannt wurde (z.B.: /dev/sda1); - ''fdisk -l'' - die Root-Partition mounten (wenn nötig, weitere Mount's durchführen, z.B. /mnt/var, /mnt/usr oder /mnt/home): - ''mount /dev/sda1 /mnt'' - ''mount /dev/sda2 /mnt/var'' - ''mount /dev/sda3 /mnt/usr'' - ''mount /dev/sdb1 /mnt/home'' - jetzt in das gemountete System wechseln und die kompletten Umgebungsvariablen für ROOT laden: - ''chroot /mnt /bin/bash'' - ''su -'' - jetzt die benötigten dynamischen Verzeichnisse mounten: - ''mount /dev'' - ''mount /sys'' - ''mount /proc'' - Jetzt können wir mit der eigentlichen Arbeit beginnen: - z.B. Bootloaderkonfiguration anpassen, oder was sonst so anliegt...: - ''vi /etc/grub.d/12_linux'' - ''update-grub'' - ''less /boot/grub/grub.cfg'' - sauber zurück gehen und am Ende einen Neustart: - CHROOT wieder verlassen: - ''umount /proc'' - ''umount /sys'' - ''umount /dev'' - ''exit'' - ''exit'' - gemountete Partitionen wieder frei geben: - ''umount /mnt/var'' - ''umount /mnt/usr'' - ''umount /mnt/home'' - ''umount /mnt'' - Neustart: - ''reboot'' ==== /etc/grub.d/12_linux ==== #!/bin/sh DATEISYSTEM="$(df -lPT / | awk '/\/dev\// {print $2}')" KERNEL="$(ls -1 /boot/vmlinuz-* | sort -n | tail -n1)" ROOTDEV="$(df -lP / | awk '/\/dev\// {print $1}')" INITRD="$(ls -1 /boot/initrd.img-* | sort -n | tail -n1)" echo " menuentry 'Ubuntu, mit ${KERNEL} (init=/bin/bash)' --class ubuntu --class gnu-linux --class gnu --class os { insmod part_msdos insmod ${DATEISYSTEM} echo 'Loading Kernel: ${KERNEL} ...' linux ${KERNEL} root=${ROOTDEV} init=/bin/bash echo 'Loading initial ramdisk: ${INITRD} ...' initrd ${INITRD} } "