Wie kann ich / dev / xvda1 überprüfen?


60

Bei der Anmeldung an der EC2 (Ubuntu) -Instanz sehe ich

*** /dev/xvda1 should be checked for errors ***

Ich kann nicht, fsck /dev/xvda1weil es gemountet ist, und sudo umount /dev/xvda1scheitert, weil es verwendet wird. lsofzeigt an

jbd2/xvda  172               root  cwd       DIR              202,1     4096          2 /
jbd2/xvda  172               root  rtd       DIR              202,1     4096          2 /
jbd2/xvda  172               root  txt   unknown                                        /proc/172/exe

und kill -SIGKILL 172ist unwirksam.

Was ist zu tun?


Kann man / dev / xvda1 in fstab auf "noauto" setzen und neu starten?
Nils Toedtmann

Antworten:


51

Die meisten Linuxer sollten heutzutage beim Booten eine erzwungene fsck ausführen, wenn die Datei / forcefsck auf dem System vorhanden ist. Wenn Sie die VM neu starten können, führen Sie sie aus

touch /forcefsck

Starten Sie dann nach Belieben neu


95

Für unsere ec2-Ubuntu-Instanz haben die obigen Antworten nicht vollständig funktioniert.

Unter Ubuntu ist die Prüfung in der rcS- Datei standardmäßig nicht aktiviert . Damit

  1. Bearbeiten Sie die rcS-Datei sudo vi / etc / default / rcS

unter dem Strich

#FSCKFIX=no

Hinzufügen

FSCKFIX=yes
  1. Bearbeiten Sie die fstab-Datei. sudo vi / etc / fstab

Suchen Sie nach dem Datensatz für / und ändern Sie ihn in '1', wenn die letzte Ziffer '0' ist. Das letzte Feld ist fsckorder und wird von fsck verwendet, um die Reihenfolge der Festplattenprüfung festzulegen. Wenn der Wert '0' ist, wird diese Festplatte übersprungen .

Zum Beispiel

LABEL=cloudimg-rootfs   /        ext4   defaults,discard        0 0

zu

LABEL=cloudimg-rootfs   /        ext4   defaults,discard        0 1 
  1. Erstelle / forcefsck Datei

    sudo touch / forcefsck

Starten Sie die ec2-Konsole neu.

Setzen Sie den Wert für fsckorder in / etc / fstab von '1' auf '0' zurück. Löschen Sie die Zeile FSCKFIX=yes, um die rcS-Datei wieder in den ursprünglichen Zustand zu versetzen.

Ich hoffe es hilft.


5
Das hat bei mir funktioniert. Einfach "touch / forcefsck" zu machen löst es nicht, ich musste auch FSCKFIX aktivieren.
Florin Andrei

1
Hier gilt das gleiche; sudo touch /forcefsckAuf einem Ubuntu 14.04-System funktionierte dies nur vor dem Neustart nicht, aber diese Antwort stimmte.
Teemu Leisti

Ich musste noch einen weiteren Schritt tun - eine Änderung an / etc / fstab wie hier beschrieben: nathanpfry.com/… Das ist seltsam, weil ich beim letzten Mal Ihre Antwort verwendet habe und sie so funktioniert hat.
childofsoong

2
Danke, das hat es für mich auf einer ec2-Instanz von AWS gelöst. Ich musste nicht von der Konsole aus neu starten, ein einfacher sudo rebootmit Ihren Änderungen gelöster Fehler.
Ralph

Dadurch wurde auch das Problem auf meinem lokalen Computer behoben. Ich denke, dies sollte als am besten markiert werden.
Arda

7

Da Sie keine Live-Disc booten können, klingt dies vielleicht etwas seltsam, aber ich schätze, es wird den Job erledigen.

hohes Level:

  • Starten Sie eine neue (andere) Instanz.
  • Speicher von alter Instanz an neue (aktuelle) anhängen.
  • rennen fsck.
  • Trennen Sie den Speicher von der neuen (aktuellen) und verbinden Sie ihn erneut mit der alten Instanz.

0

Ich mache nur 3 Schritte weiter unten und das Problem wurde behoben.

  1. Fügen Sie "FSCKFIX = yes" zu / etc / default / rcS hinzu
  2. sudo touch / forcefsck
  3. sudo neu starten

Vielen Dank an alle.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.