Fstab (Dateisystemtabelle) ist eine Konfigurationsdatei, mit der Sie definieren, wie die Laufwerkspartition, das Dateisystem und die Dateifreigabenbereitstellungen in Ihrer Linux-VM bei einem Systemneustart beibehalten werden.
In diesem Dokument werden mehrere Bedingungen beschrieben, bei denen eine falsche fstab-Konfiguration zu einem Bootproblem führen kann. Außerdem erhalten Sie Tipps zur Behebung des Problems.
Im Folgenden sind einige häufige Probleme mit der Fehlkonfiguration von fstab aufgeführt:
- Syntaxfehler in der Konfigurationsdatei
fstab
- Eine falsche UUID
- Für ein nicht angehängtes/nicht verfügbares Gerät ist ein Eintrag vorhanden
- Verworfene Bereitstellungsoptionen wie
nobarrier
für den xfs-Dateisystemtyp in SUSE-Images oder RHEL-Images.
Vorbereitung
- Wenn Sie Cloud Logging zum Logging der Ausgabe des seriellen Ports verwenden möchten, machen Sie sich mit Cloud Logging vertraut.
-
Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben.
Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud-Dienste und APIs überprüft.
Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
Melden Sie sich über die Google Cloud Console in der seriellen Konsole der VM an.
Geben Sie im aktuellen Notfallmodus das Root-Passwort ein, um auf Ihre VM zuzugreifen.
Öffnen Sie die Datei
fstab
mit Ihrem bevorzugten Texteditor. Nehmen Sie die erforderlichen Änderungen vor und speichern Sie die Änderungen in der Dateifstab
. Im folgenden Beispiel wird dervi
-Editor verwendet.vi /etc/fstab
Im vorherigen Beispiel ist das Gerät für
/distribution
von der VM getrennt. Kommentieren Sie die Zeile, die auf das Dateisystem verweist, oder entfernen Sie den fstab-Eintrag für den Bereitstellungspunkt/distribution
.Verwenden Sie
man fstab
für Weitere Informationen zur Konfiguration und Syntax von fstab.Speichern Sie die Datei und beenden Sie den Editor. Wenn Sie den
vi
-Editor verwenden, verwenden SieESC
+:wq!
, um zu speichern und den Editor zu beenden.Setzen Sie den Bootvorgang fort, indem Sie an der Eingabeaufforderung reboot eingeben.
Nachdem das Problem erfolgreich behoben wurde, sollte der Bootvorgang der VM abschließen und die Anmeldeaufforderung wird in der seriellen Konsole angezeigt.
Prüfen Sie, ob Sie sich wieder über SSH bei der VM anmelden können.
Rufen Sie in der Google Cloud Console die Seite „VM-Instanzen” auf. Zur Seite „VM-Instanzen“
Melden Sie sich über die Google Cloud Console in der seriellen Konsole der virtuellen Maschine an.
Klicken Sie in der Google Cloud Console für eine virtuelle Maschine auf ZURÜCKSETZEN.
Unterbrechen Sie im Fenster der seriellen Konsole den Bootvorgang, indem Sie im grub-bildschirm oder im Menü auf den Pfeil klicken, um zu pausieren.
Wählen Sie aus der Liste der Kernel im Bildschirm des Grub-Bootloaders den Kernel aus und drücken Sie
e
auf der Tastatur.Fügen Sie den Parameter
rd.break
am Ende der Kernel-Zeile hinzu und drücken Siectrl
+x
. Dies hilft beim Booten der VM im Einzelnutzermodus.Stellen Sie das Root-Dateisystem im Lese-Schreibmodus bereit.
Analysieren Sie die Datei, nehmen Sie die erforderlichen Änderungen vor und speichern Sie die Datei
fstab
. Verwenden Sieman fstab
für weitere Informationen zur Konfiguration und Syntax. Öffnen Sie die Dateifstab
mit Ihrem bevorzugten Texteditor. Im folgenden Beispiel wird der vi-Editor verwendet.vi /etc/fstab
In diesem Beispiel ist das Gerät für
/distribution
von der VM getrennt. Kommentieren Sie daher die Zeile oder entfernen Sie den fstab-Eintrag für den Bereitstellungspunkt/distribution
.Speichern Sie die Datei und beenden Sie den Editor. Wenn Sie den vi-Editor verwenden, speichern Sie mit
ESC
+:wq!
und verlassen Sie damit fstab.Setzen Sie den Bootvorgang fort, indem Sie bei der Eingabeaufforderung
reboot
eingeben.Nachdem das Problem erfolgreich behoben wurde, sollte der Bootvorgang der VM abschließen und die Anmeldeaufforderung wird in der seriellen Konsole angezeigt.
Prüfen Sie, ob Sie sich über SSH bei der VM anmelden können.
REST
Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Weitere Informationen finden Sie unter Für die Verwendung von REST authentifizieren in der Dokumentation zur Google Cloud-Authentifizierung.
fstab-Probleme identifizieren
Bei Bootproblemen empfiehlt Google dringend, die Bootlogs in der seriellen Konsole der Linux-VM zu prüfen. Die VM wechselt in den Notfallmodus, mit einer Fehlermeldung, die darauf hinweist, dass das Problem bei fstab liegt.
[K[[1;31m TIME [0m] Timed out waiting for device dev-incorrect.device. [[1;33mDEPEND[0m] Dependency failed for /distribution. [[1;33mDEPEND[0m] Dependency failed for Local File Systems. ... Welcome to emergency mode! After logging in, type "journalctl -xb" to viewsystem logs, "systemctl reboot" to reboot, "systemctl default" to try again to boot into default mode. Give root password for maintenance (or type Control-D to continue)
Laut der Fehlermeldung liegt ein Abhängigkeitsfehler für das
/distribution
-Dateisystem vor. Der Abhängigkeitsfehler für einen Dateisystem-Bereitstellungspunkt unterscheidet sich je nach den verwendeten Dateisystemnamen.Lösung
Verwenden Sie die folgenden Optionen, um den Fehler
fstab
auf Linux-VMs zu beheben, die in Google Cloud gehostet werden. Mit der seriellen Konsole können Sie das Problem schneller beheben als mit der manuellen Methode.Wenn Sie das fstab-Problem mit den folgenden Methoden beheben möchten, müssen Sie den Zugriff auf den seriellen Port für Ihre VM aktivieren.
Option 1: Mit der seriellen Konsole im Notfall-Modus in der VM anmelden
Option 2: Einzelnutzermodus in der seriellen Konsole verwenden
Diese Option kann verwendet werden, wenn das Root-Passwort nicht festgelegt ist.
Voraussetzung: Der Parameter
GRUB_TIMEOUT
in der Grub-Konfigurationsdatei muss auf einen Wert ungleich Null gesetzt werden. Im Allgemeinen ist diese Datei unter/etc/default/grub
gespeichert. Bei einigen älteren Distributionen kann sie jedoch in einem nicht standardmäßigen Verzeichnis gespeichert sein.Option 3: VM wiederherstellen
Diese Option kann verwendet werden, wenn das Root-Passwort nicht festgelegt ist oder Sie den Einzelnutzermodus nicht verwenden können.
Weitere Informationen finden Sie unter Unzugängliche VM wiederherstellen.
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2024-11-20 (UTC).
-