Hell's Kitchen

Irgendwie hat Rolf zuviel Zeit

Mit LiveCD und chroot ein Linuxsytem reparieren

, ,

Dieser Post soll mir zu aller erst selbst eine Erinnerung sein. Vielleicht nimmt es aber auch dem ein oder anderen die Angst vor chroot.
Wenn aus irgendeinem Grund Linux nicht mehr startet oder GRUB nicht mehr will kann man versuchen mit einer LiveCD in einer chroot Umgebung sein System zu reparieren (zb configs ändern, GRUB neu schreiben)

Erfahrungen im Umgang mit dem Terminal und Verständnis des Dateisystems sollten vorhanden sein.

Als erstes sollte man, nach dem Start des Livesystems, in einem Terminal die Namen der einzelnen Partitionen der Festplatte zu ermitteln.Im Terminal gibt der Befehl
fdisk -l

diese aus.

Die nachfolgenden Befehle werden als root ausgeführt. Wie das bei der jeweiligen LiveCD (eventuell Passwort) gemacht wird muss man in Erfahrung bringen (google).
Als nächstes muss man einige Verzeichnisse des installierten Systems booten damit chroot darauf auch zugreifen kann.
Dazu wird die Partition des root Verzeichnisses gemountet (wird bei Ausgabe von fdisk mit "/" gekennzeichnet)
mount /dev/Name der Partition /mnt

Benutzt das zu reparierende System eine eigene Bootpartition muss dies auch gemountet werden
mount /dev/sda3 /mnt/boot

Bevor man nun in das installierte System eingreifen kann müssen noch folgende Verzeichnisse eingehängt werden.
mount -o bind /dev /mnt/de
mount -t proc /proc /mnt/proc
mount -o bind /sys /mnt/sys

Nun kann man mittels
chroot /mnt /bin/bash

in die chroot Umgebung wechseln und seine Änderungen vornehmen.

Um die chroot Umgebung wieder zu verlassen gibt man
exit

ein, danach werden die vorher eingehängten Verzeichnisse ausgehängt.
umount /mnt/dev
umount /mnt/proc
umount /mnt/sys

Als letztes jetzt die chroot Umgebung mit
umount /mnt

aushängen.

Danach kann man die LiveCD herunterfahren, CD entnehmen und die reparierte Linuxinstalation starten.

Anmerkungen:
Diese Vorgehensweise ist für debianbasierte Systeme, Abweichungen zu anderen Distributionen
bitte selbst in Erfahrung bringen.
Edit: Mögliche Lösung noch ungetestet: Sollte dieser Fehler ausgegeben werden: /dev/null: Permission denied, Lösung: rm /dev/null danach sollte das weg sein.

Ich kann bei mir, entgegen anders lautenden Anleitungen, aus chroot heraus nicht mit apt-get ins Netz. Daher lade ich die, bei einem eventuellen benötigten downgrade, benötigte Dateien (passierte mir ein paar mal beim testen von GRUB2) mit der LiveCD herunter und installiere sie mit dpkg Wenn aus irgendeinem Grund Linux nicht mehr startet oder GRUB nicht mehr will kann man versuchen mit einer LiveCD in einer chroot Umgebung sein System zu reparieren (zb configs ändern, GRUB neu schreiben)

Mehrere Operainstallationen unter Linux parallel benutzenLinux IPV6 deaktivieren

Comments

Amdrubal Monday, February 28, 2011 5:52:06 AM

Wenn du von der Live- Cd startest und auf die Konsole gehst, hast du automatisch root- Rechte.
Auf den befehl "sudo" erfolgt dann keine Passwort- Aabfrage.

Grüsse

Write a comment

New comments have been disabled for this post.