Das Ausführen von fsck auf einem Nicht-Root-Dateisystem ist ziemlich einfach. Aber für das Root-Dateisystem können Sie fsck nicht ausführen, wenn es gemountet ist.
Dieses kurze Tutorial erklärt, wie man eine Dateisystemprüfung für ein Root-Dateisystem erzwingt.
Root-Dateisystem
In diesem Beispiel ist /dev/sda1-Partition das Root-Dateisystem, das als /
gemountet wird# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 63G 41G 19G 69% /
Wenn Sie fsck ausführen, um Ihr Root-Dateisystem zu überprüfen, erhalten Sie die folgende Fehlermeldung, da /dev/sda1 gemountet ist und Sie fsck nicht auf einem gemounteten Dateisystem ausführen können.
# fsck /dev/sda1 fsck from util-linux-ng 2.17.2 e2fsck 1.41.12 (17-May-2010) /dev/sda1 is mounted. e2fsck: Cannot continue, aborting.
Wenn Sie fsck auf einem Nicht-Root-Dateisystem ausführen, können Sie diese Partition einfach aushängen und fsck ausführen.
Aber in diesem Fall führen wir fsck gerne auf einem Root-Dateisystem aus. Also, was ist die Lösung?
Wenn Sie neu bei fsck sind, lesen Sie auch Folgendes:10 Beispiele für Linux-Fsck-Befehle zum Überprüfen und Reparieren des Dateisystems
Tune2fs-Ausgabe vor dem Neustart
Bevor wir das System neu starten, lassen Sie uns überprüfen, wann fsck das letzte Mal eine Überprüfung des Root-Dateisystems durchgeführt hat.
Verwenden Sie dazu den Befehl tune2fs und grep für „check“, wie unten gezeigt.
# tune2fs -l /dev/sda1 | grep -i check Last checked: Mon Nov 24 12:39:44 2015 Check interval: 15552000 (6 months) Next check after: Sun May 22 13:39:44 2016
Wie wir aus der obigen Ausgabe sehen:
- Zuletzt überprüft:Zeigt an, wann die letzte Prüfung des Root-Dateisystems stattgefunden hat. Dies geschah am Nov.
- Intern prüfen:gibt an, wie oft das Root-Dateisystem geprüft wird. In diesem Beispiel wird es weitere 6 Monate warten, bevor fsck während des Neustarts auf diesem Dateisystem ausgeführt wird.
- Nächste Prüfung nach:Gibt das Datum und die Uhrzeit an, nach denen das Dateisystem bei einem Neustart geprüft wird. Dies wird erst nach Mai geschehen.
Aber in unserem Fall wollen wir nicht bis Mai warten. Wir wollen jetzt die Fsck-Prüfung des Root-Dateisystems durchführen.
Erstelle /forcefsck-Datei, um die Überprüfung des Root-Dateisystems zu erzwingen
Um also eine Überprüfung des Root-Dateisystems zu erzwingen, besteht eine der einfachen Möglichkeiten darin, das System neu zu starten und fsck zu zwingen, das Dateisystem auszuführen, wenn das System hochfährt, bevor das Root-Dateisystem vom Kernel eingehängt wird.
Um fsck während des Neustarts zu erzwingen, erstellen Sie zuerst eine leere Datei namens forcefsck unter / wie unten gezeigt.
# cd / # touch forcefsck # ls -l /forcefsck -rw-r--r--. 1 root root 0 Mar 9 20:15 /forcefsck
Starten Sie nun das System neu:
# reboot
Tune2fs-Ausgabe nach Neustart
Wenn Sie Zugriff auf die Konsole haben, können Sie sehen, dass fsck während des Neustarts die Überprüfung des Dateisystems / durchführt.
Nach der Überprüfung löscht fsck automatisch die zuvor erstellte /forcefsck-Datei. Nach dem Neustart sehen Sie diese Datei nicht mehr.
# ls -l /forcefsck ls: cannot access /forcefsck: No such file or directory
Wenn Sie nun tune2fs ausführen, sehen Sie, dass das Feld „Zuletzt überprüft“ mit dem aktuellen Zeitstempel aktualisiert wurde. Dies bestätigt, dass fsck während des Neustarts die Überprüfung des Root-Dateisystems durchgeführt hat.
# tune2fs -l /dev/sda1 | grep -i check Last checked: Wed Mar 09 20:30:04 2016 Check interval: 15552000 (6 months) Next check after: Mon Sep 05 21:30:04 2016
Sie werden auch sehen, dass sich der Wert von „Nächste Prüfung nach“ entsprechend geändert hat. d.h. 6 Monate ab dem Zeitpunkt, an dem wir das System neu gestartet haben.