Wie behebe ich einen Startfehler aufgrund einer falschen fstab?

26

Es scheint, dass ich einen falschen Datensatz hinzugefügt habe /etc/fstab:

//servername/share    /mnt/share    cifs     defaults,username=myuser     0 0

Als ich das tat mount -a, fragte es Benutzerpasswort, um Netzwerkfreigabe bereitzustellen. Es scheint, dass es ohne Passwort beim Booten nicht weitergehen kann, also hängt es einfach.

Wie kann ich fstab reparieren, um Startfehler zu vermeiden?

altern
quelle

Antworten:

37

Es scheint, dass ich eine Lösung gefunden habe:

  • Klicken Sie an der Eingabeaufforderung von Grub auf a, um Optionen anzufügen
  • Fügen Sie init=/bin/basham Ende der Kernel-Befehlszeile hinzu und drücken Sie die Eingabetaste

Das System wird über eine Eingabeaufforderung wie 'bash-3.2 #' gestartet. Geben Sie die folgenden Befehle an der Eingabeaufforderung ein

  • mount -o remount,rw /
  • vim /etc/fstab

Bearbeiten Sie die fstab-Datei und kommentieren Sie die Fehler, indem Sie am Anfang jeder problematischen Zeile ein # hinzufügen. Speichern Sie die Datei

  • Neustart durch Drücken von STRG + ALT + ENTF
altern
quelle
4
Ich musste verwenden, mount -o remount,rw / --target /um erfolgreich im rw-Modus erneut zu montieren. ELSECASE Berg auswählte , die schlechten Werte aus /etc/fstab, siehe die man mountfür weitere Einzelheiten.
Laconbass
1
@laconbass du hast verdammt recht, --target /ist der schlüssel!
Sempasha
Dies gilt auch heute noch - über sechs Jahre später. Wie auch immer, auf CentOS7 ist der Schlüssel zum Ändern eines Eintrags beim Booten jetzt tab, und einmal beim Bash müssen Sie Ihr Dateisystem (das zu diesem Zeitpunkt noch nicht gemountet ist) mit einem einfachen mount /dev/sda(X) /mnt(offensichtlich das Ändern der Root-Partition mit dem richtigen)
nnsense mounten
Mein Leben gerettet ..
TheEyesHaveIt
2

Wie wäre es, wenn Sie den Eintrag entfernen, einen Schnappschuss erstellen und dann versuchen, Ihre / etc / fstab zu ändern, damit Sie einen funktionierenden Schnappschuss haben, auf den Sie zurücksetzen können?

Entsprechend der Manpage können mount.cifs Sie auch ein Passwort über angeben password=arg. Außerdem gibt es laut dieser Manpage kein Argument, username=arg sondern stattdessen user=arg. Auf Ihrem System kann dies jedoch anders sein. Überprüfen Sie Ihre Manpage auf die korrekten Argumentnamen.

scai
quelle
manfür den Sieg.
Tim
Ich wollte gerade einen Schnappschuss erstellen, aber während ich experimentierte fstab, ging vm instance aus irgendeinem Grund aus. Anscheinend würde ich die Frage nicht stellen, ob ich es selbst reparieren könnte.
26.
2
Ihre Problembeschreibung ist etwas unklar. Können Sie nicht im Einzelbenutzer- / Wiederherstellungsmodus starten? Es sollte nur versucht werden, die Root-Fs zu mounten und die Fstab in Ruhe zu lassen.
Scai
1

Die andere einfache Möglichkeit ist das Booten in den Live-CD-Modus und das Mounten der richtigen Partition. Dann können Sie alles reparieren, was Sie wollen!

user3435653
quelle
1

Ich habe eine Lösung gefunden, bei der der Systemfehlerkern nicht geladen wird. Verwenden Sie die Live-CD, um auf Ihre vorhandene Installation zuzugreifen. Einmal im Linux-Kernel neu installieren:

pacman -S Linux

Dann löschen Sie die fstab-Datei aus etc / fstab:

rm /etc/fstab

Jetzt neu installieren systemd:

pacman -S systemd

Bei einer Neuinstallation von systemd wird automatisch eine neue fstab-Datei generiert

Installieren Sie jetzt den Bootloader neu. In diesem Fall verwende ich grub:

pacman -S grub os-prober

(os probe ist nützlich, wenn mehr als 1 os auf ihrer festplatte / ssd installiert ist) Dann

grub-install --target=i386-pc /dev/sda

Wenn Sie fertig sind, machen Sie die Konfigurationsdateien:

grub-mkconfig -o /boot/grub/grub.cfg

Hängen Sie dann die verwendeten Partitionen aus und führen Sie einen Neustart durch

umount /dev/sdX 
reboot

Dies sollte das Problem beheben, es hat bei mir funktioniert.

Jp ---
quelle
0

Vielleicht bin ich zu spät. Aber das ist FYI. In dieser Situation können Sie fstab mit nano laden und nach dem Bearbeiten der fstab neu starten.

sudo nano /etc/fstab
Choxmi
quelle