Kapitel 36. Systemwiederherstellung
Wenn Probleme auftreten, gibt es auch immer Möglichkeiten, diese zu lösen. Dazu ist es jedoch erforderlich, dass Sie das System gut kennen. In diesem Kapitel wird beschrieben, wie Sie Rettungsmodi und Einzelbenutzermodi starten können und wo Sie Ihr eigenes Wissen einsetzen können, um Schäden am System zu beheben.
36.1. Rettungsmodus
36.1.1. Häufige Probleme
Üblicherweise ist der Rettungsmodus aus den folgenden Gründen erforderlich:
- Es ist Ihnen nicht möglich, Red Hat Enterprise Linux normal zu booten (Runlevel 3 oder 5).
- Es traten Probleme mit der Hardware oder der Software auf, und Sie möchten wichtige Dateien von der Festplatte Ihres Systems entfernen.
- Sie haben das Root-Passwort vergessen.
36.1.1.1. Sie können Red Hat Enterprise Linux nicht booten
Dieses Problem lässt sich häufig darauf zurückführen, dass ein anderes Betriebssystem installiert wurde, nachdem Sie Red Hat Enterprise Linux installiert haben. Es gibt Betriebssysteme, die davon ausgehen, dass kein anderes Betriebssystem auf Ihrem Computer vorhanden ist, und überschreiben daher den Master-Boot-Record (MBR), der jedoch den GRUB-Bootloader enthält. Wird der Bootloader überschrieben, kann Red Hat Enterprise Linux nicht gebootet werden. Die einzige Abhilfe ist hier der Rettungsmodus und die Neukonfiguration des Bootloaders.
Weiterhin tritt häufig folgendes Problem auf: Sie benutzen ein Tool zur Partitionierung, um eine Partition in der Größe anzupassen oder erstellen nach der Installation eine neue Partition auf dem freien Speicherplatz, wodurch sich die Reihenfolge Ihrer Partitionen verändert. Wenn sich jedoch die Partitionszahl der Partition
/
ändert, findet der Bootloader sie nicht mehr, wenn er die Partition einhängen will. Dieses Problem können Sie lösen, indem Sie in den Rettungsmodus booten und die Datei /boot/grub/grub.conf
abändern.
Anleitungen zur Neuinstallation des GRUB-Bootloaders aus einer Rettungsumgebung heraus finden Sie unter Abschnitt 36.1.2.1, »Neuinstallation des Bootloaders«.
36.1.1.2. Probleme mit Hardware/Software
In diese Kategorie fallen eine Vielzahl verschiedener Situationen. Zwei Beispiele sind Fehler der Festplatten oder das Angeben eines ungültigen root-Gerätes oder Kernels in der Bootloader-Konfigurationsdatei. Tritt einer dieser beiden Fehler auf, können Sie Red Hat Enterprise Linux unter Umständen nicht booten. Wenn Sie jedoch in einen der Rettungsmodi booten können, können Sie das Problem eventuell lösen oder zumindest Kopien der wichtigsten Dateien erstellen.
36.1.2. In den Rettungsmodus booten
Der Rettungsmodus ermöglicht es Ihnen, eine kleine Red Hat Enterprise Linux Umgebung vollständig von CD-ROM oder einer anderen Methode anstelle der Festplatte zu booten.
Wie der Name schon sagt, dient der Rettungsmodus dazu, etwas zu retten. Während des normalen Betriebs verwendet Ihr Red Hat Enterprise Linux System Dateien, die auf der Festplatte Ihres Systems gespeichert sind — um Programme auszuführen, Dateien zu speichern u.v.m.
Es kann jedoch vorkommen, dass Sie, dadurch dass Red Hat Enterprise Linux nicht vollständig funktionsfähig ist, keinen Zugriff auf die Dateien Ihrer Festplatte erhalten. Der Rettungsmodus ermöglicht es Ihnen, auch dann auf diese Dateien zuzugreifen, wenn Red Hat Enterprise Linux nicht von der entsprechenden Festplatte ausgeführt werden kann.
Um in den Rettungsmodus zu booten, müssen Sie in der Lage sein, das System mit Hilfe einer der folgenden Methoden [12] zu booten:
- Booten des Systems von einer Boot-CD-ROM oder -DVD.
- Booten des Systems von einem anderen Installations-Boot-Medium, wie beispielsweise einem USB-Flashgerät.
- Booten des Systems von der Red Hat Enterprise Linux Installations-DVD.
Sobald Sie mit einer dieser Methoden gebootet haben, geben Sie das Schlüsselwort
rescue
als Kernel-Parameter an. Für ein x86-System geben Sie beispielsweise den folgenden Befehl an der Installations-Boot-Eingabeaufforderung ein:
linux rescue
Falls Ihr System den Treiber eines Drittanbieters benötigt, die auf einem Treiber-Datenträger zum Booten bereitgestellt wird, so laden Sie den Treiber mit der zusätzlichen Option
dd
:
linux rescue dd
Weitere Informationen zur Verwendung eines Treiber-Datenträgers zum Zeitpunkt des Bootvorgangs finden Sie unter Abschnitt 6.3.3, »Verwenden Sie eine Boot-Option, um einen Datenträger zur Treiberaktualisierung anzugeben« für x86 Syteme oder Abschnitt 13.3.3, »Verwenden Sie eine Boot-Option, um einen Datenträger zur Treiberaktualisierung anzugeben« für POWER-Systeme.
Hindert ein Treiber, der Teil der Red Hat Enterprise Linux 6 Distribution ist, das System am Booten, so setzen Sie diesen Treiber mit der
rdblacklist
-Option auf die Blacklist. Um zum Beispiel ohne den foobar-Treiber in den Rettungsmodus zu booten, führen Sie Folgendes aus:
linux rescue rdblacklist=foobar
Sie müssen dann ein paar grundlegende Fragen, wie zum Beispiel nach der zu verwendenden Sprache, beantworten. Sie werden außerdem danach gefragt, wo sich ein gültiges Rettungs-Image befindet. Wählen Sie Lokale CD-ROM, Festplatte, NFS-Image, FTP oder HTTP. Der ausgewählte Ort muss einen gültigen Installationsbaum enthalten, und dieser muss für die gleiche Version von Red Hat Enterprise Linux sein wie der von dem Red Hat Enterprise Linux Datenträger, von dem sie gebootet haben. Wenn Sie eine Boot-CD-ROM oder einen anderen Datenträger zum Starten des Rettungsmodus verwendet haben, muss der Installationsbaum vom gleichem Baum wie das davon erstellte Medium sein. Weitere Informationen zum Erstellen eines Installationsbaums auf einer Festplatte, NFS-Server, FTP-Server oder HTTP-Server finden Sie in einem vorherigen Abschnitt dieses Handbuchs.
Wenn Sie ein Rescue-Image ausgewählt haben, das keine Netzwerkverbindung erfordert, werden Sie gefragt, ob Sie eine Netzwerkverbindung herstellen wollen oder nicht. Eine Netzwerkverbindung ist dann sinnvoll, wenn Sie z.B. Dateien auf einem anderen Computer sichern wollen oder RPM-Pakete von einem gemeinsamen Netzwerk installieren möchten.
Die folgende Meldung wird angezeigt:
Die Rettungs-Umgebung wird nun versuchen, Ihre Linux-Installation zu finden und sie im Verzeichnis /mnt/sysimage zu einzuhängen. Anschließend können Sie alle für Ihr System notwendigen Änderungen vornehmen. Wenn Sie fortfahren möchten, wählen Sie 'Weiter'. Sie können Ihre Dateisysteme auch im schreibgeschützten (read-only) Modus statt im Lese- und Schreibmodus einhängen. Wählen Sie in diesem Fall 'Nur-Lesen'. Wenn dieser Prozess fehlschlägt, können Sie 'Überspringen' wählen. Auf diese Weise wird dieser Schritt übersprungen und es wird direkt eine Befehls-Shell angezeigt.
Wenn Sie
wählen, wird versucht, Ihr Dateisystem unter dem Verzeichnis /mnt/sysimage
einzuhängen. Falls eine Partition nicht einhängt werden kann, werden Sie darüber informiert. Wenn Sie auswählen, wird versucht, das Dateisystem im Verzeichnis /mnt/sysimage
im schreibgeschützten Modus einzuhängen. Wenn Sie wählen, wird Ihr Dateisystem nicht eingehängt. Wählen Sie , wenn Sie denken, dass Ihr Dateisystem defekt ist.
Wenn sich Ihr System dann im Rettungsmodus befindet, erscheint eine Eingabeaufforderung auf der VC (virtuelle Konsole) 1 und der VC 2 (verwenden Sie die Tastenkombination Strg-Alt-F1, um auf VC 1 Zugriff zu erhalten und die Tastenkombination Strg-Alt-F2, um auf VC 2 Zugriff zu erhalten):
sh-3.00b#
Wenn Sie
gewählt haben, um Ihre Partitionen automatisch einzuhängen, und diese erfolgreich eingehängt wurden, befinden Sie sich im Einzelbenutzermodus.
Auch wenn Ihr Dateisystem eingehängt ist, ist die standardmäßig eingehängte Root-Partition während des Rettungsmodus eine temporäre Root-Partition und nicht die Root-Partition des Dateisystems, die im normalen Benutzermodus (Runlevel 3 oder 5) verwendet wird. Wenn Sie das Einhängen Ihres Dateisystems ausgewählt haben und dies erfolgreich war, können Sie die Root-Partition der Umgebung des Rettungsmodus in die Root-Partition Ihres Dateisystems ändern, indem Sie folgenden Befehl ausführen:
chroot /mnt/sysimage
Dies kann hilfreich sein, wenn Sie Befehle wie
rpm
eingeben, da hierbei Ihre Root-Partition als /
eingehängt sein muss. Wenn Sie die Chroot-Umgebung verlassen wollen, geben Sie den Befehl exit
ein, um damit zur Eingabeaufforderung zurückzukehren.
Wenn Sie
gewählt haben, können Sie trotzdem versuchen, eine Partition oder einen LVM2 logischen Datenträger von Hand im Rettungsmodus einzuhängen, indem Sie ein Verzeichnis wie /foo
erstellen und den folgenden Befehl eingeben:
mount -t ext4 /dev/mapper/VolGroup00-LogVol02 /foo
Im oben aufgeführten Befehl handelt es sich bei
/foo
um ein Verzeichnis, das Sie erstellt haben, und bei /dev/mapper/VolGroup00-LogVol02
um den LVM2 logischen Datenträger, den Sie einhängen möchten. Wenn die Partition vom Typ ext2
oder ext3
ist, ersetzen Sie ext4
durch ext2
bzw. ext3
.
Wenn Sie die Namen aller physischen Partitionen nicht kennen, geben Sie den folgenden Befehl ein, um diese aufzulisten:
fdisk -l
Wenn Sie die Namen aller LVM2 physischen Datenträger nicht kennen, geben Sie die folgenden Befehle ein, um diese aufzulisten:
pvdisplay
vgdisplay
lvdisplay
Von der Eingabeaufforderung aus können zahlreiche nützliche Befehle aufgerufen werden, darunter:
ssh
,scp
undping
, falls das Netzwerk aktiviert wurdedump
undrestore
für Benutzer mit Bandgerätenparted
undfdisk
für die Verwaltung von Partitionenrpm
für das Installieren oder Aktualisieren von Softwarevi
zum Bearbeiten von Textdateien
36.1.2.1. Neuinstallation des Bootloaders
In vielen Fällen kann der GRUB-Bootloader aus Versehen gelöscht, beschädigt oder durch andere Betriebssysteme ersetzt worden sein.
Die folgenden Schritte erläutern detailliert, wie GRUB neu im Master-Boot-Record installiert wird:
- Booten Sie das System von einem Installations-Boot-Medium.
- Geben Sie
linux rescue
an der Installations-Boot-Eingabeaufforderung ein, um die Rescue-Umgebung zu starten. - Geben Sie
chroot /mnt/sysimage
ein, um die Root-Partition einzuhängen. - Geben Sie
/sbin/grub-install bootpart
ein, um den GRUB-Bootloader neu zu installieren, wobei bootpart die Boot-Partition ist (normalerweise /dev/sda). - Überprüfen Sie die Datei
/boot/grub/grub.conf
, da möglicherweise zusätzliche Einträge benötigt werden, damit GRUB zusätzliche Betriebssysteme ansteuern kann. - Starten Sie das System neu.
36.1.3. Booten in den Einzelbenutzermodus
Einer der Vorteile des Einzelbenutzer-Modus ist, dass Sie keine Boot-CD-ROM benötigen. Allerdings steht Ihnen nicht die Option zur Verfügung, die Dateisysteme schreibgeschützt (read-only) oder überhaupt nicht einzuhängen.
Wenn Ihr System zwar bootet, die Anmeldung im System jedoch nicht möglich ist, versuchen Sie den Einzelbenutzermodus.
Im Einzelbenutzermodus bootet Ihr Computer in Runlevel 1. Ihre lokalen Dateisysteme werden eingehängt, Ihr Netzwerk wird jedoch nicht aktiviert. Sie benötigen eine Shell zur Systemwartung. Im Gegensatz zum Rettungsmodus versucht der Einzelbenutzermodus, die Dateisysteme automatisch einzuhängen. Benutzen Sie den Einzelbenutzermodus nicht, wenn Ihr Dateisystem nicht erfolgreich eingehängt werden kann. Sie können den Einzelbenutzermodus nicht verwenden, wenn die Konfiguration des Runlevel 1 auf Ihrem System fehlerhaft ist.
Falls Sie auf einem x86-System GRUB verwenden, gehen Sie folgendermaßen vor, um in den Einzelbenutzermodus zu booten:
- Wenn der GRUB Splash-Bildschirm beim Hochfahren des Systems erscheint, können Sie beliebige Taste drücken, um in das GRUB-Menü zu gelangen.
- Wählen Sie Red Hat Enterprise Linux mit der Kernel-Version, die Sie booten möchten, und geben Sie
a
zum Anfügen einer Zeile ein. - Gehen Sie zum Zeilenende und geben Sie
single
als ein separates Wort ein (drücken Sie auf die Leertaste und geben dannsingle
ein). Beenden Sie den Modus mit Enter.
36.1.4. Booten in den Rettungsmodus
Im Rettungsmodus wird nur eine kleinstmögliche Umgebung gebootet. Das Root-Dateisystem wird schreibgeschützt (read-only) eingehängt und praktisch nichts ist eingerichtet. Der Hauptvorteil des Rettungsmodus gegenüber dem Einzelbenutzer-Modus besteht darin, dass die
init
-Dateien nicht geladen werden. Wenn init
beschädigt ist, oder nicht funktioniert, können Sie immer noch Dateisysteme einhängen, um Daten, die während einer Neuinstallation verloren gingen, zu retten.
Um in den Rettungsmodus zu booten, verwenden Sie dieselbe Methode, wie für den Einzelbenutzermodus unter Abschnitt 36.1.3, »Booten in den Einzelbenutzermodus« beschrieben, mit einem kleinen Unterschied: Ersetzen Sie das Schlüsselwort
single
durch das Schlüsselwort emergency
.