Wie führe ich fsck beim Booten aus, wenn ich Pi 3 und Raspberry Jessie verwende? Ich habe ein Tutorial gelesen, aber sie unterscheiden sich.
Ich bin gelaufen, sudo touch /forcefsck
aber was muss ich noch tun? Ich weiß, dass ich FSCKFIX = yes setzen sollte, aber was ist die richtige Datei? Einige sagen /lib/init/vars.sh
andere /etc/default/rcS
.
Wie kann ich überprüfen, ob meine Einstellungen funktionieren? Ich habe keine Sichtbarkeit zum Bildschirm. Es gibt Stromausfälle, daher besteht ein hohes Risiko, dass das Dateisystem beschädigt wird.
Bearbeiten:
Ich habe zwei unten erwähnte Lösungen ausprobiert.
1) Wenn Sie sudo shutdown -rF now
/var/log/boot.log verwenden, heißt es:
[^[[32m OK ^[[0m] Started Load/Save Random Seed.
[^[[32m OK ^[[0m] Started Show Plymouth Boot Screen.
[ 3.679250] systemd-fsck[219]: fsck.fat 3.0.27 (2014-11-12)
[ 3.681320] systemd-fsck[219]: /dev/mmcblk0p1: 124 files, 2666/8057 clusters
[^[[32m OK ^[[0m] Started File System Check on /dev/mmcblk0p1.
Mounting /boot...
[^[[32m OK ^[[0m] Reached target Paths.
[^[[32m OK ^[[0m] Created slice system-systemd\x2drfkill.slice.
Starting Load/Save RF Kill Switch Status of rfkill0...
[^[[32m OK ^[[0m] Started Load/Save RF Kill Switch Status of rfkill0.
[^[[32m OK ^[[0m] Created slice system-ifup.slice.
[^[[32m OK ^[[0m] Mounted /boot.
[^[[32m OK ^[[0m] Reached target Local File Systems.
Starting Tell Plymouth To Write Out Runtime Data...
Starting Create Volatile Files and Directories...
Starting LSB: Raise network interfaces....
[^[[32m OK ^[[0m] Reached target Remote File Systems.
Starting Trigger Flushing of Journal to Persistent Storage...
Starting LSB: Prepare console...
Starting LSB: Switch to ondemand cpu governor (unless shift key is pressed)...
[^[[32m OK ^[[0m] Started Tell Plymouth To Write Out Runtime Data.
2) Mit fsck.mode=force
und fsck.repair=yes
im /boot/cmdline.txt
Bootlog heißt es:
[^[[32m OK ^[[0m] Started Show Plymouth Boot Screen.
[^[[32m OK ^[[0m] Reached target Paths.
[^[[32m OK ^[[0m] Created slice system-systemd\x2drfkill.slice.
[^[[32m OK ^[[0m] Created slice system-ifup.slice.
[ 5.749367] systemd-fsck[112]: Pass 2: Checking directory structure
[ 8.673500] systemd-fsck[112]: Pass 3: Checking directory connectivity
[ 8.683831] systemd-fsck[112]: Pass 4: Checking reference counts
[ 9.318835] systemd-fsck[112]: Pass 5: Checking group summary information
[ 9.518754] systemd-fsck[112]: /dev/mmcblk0p2: 131321/956160 files (0.2% non-contiguous$
[^[[32m OK ^[[0m] Started File System Check on Root Device.
Starting File System Check on /dev/mmcblk0p1...
Starting Remount Root and Kernel File Systems...
[^[[32m OK ^[[0m] Started Remount Root and Kernel File Systems.
Starting Load/Save RF Kill Switch Status of rfkill0...
Starting Load/Save Random Seed...
[^[[32m OK ^[[0m] Reached target Local File Systems (Pre).
[ 9.639259] systemd-fsck[239]: fsck.fat 3.0.27 (2014-11-12)
[^[[32m OK ^[[0m] Started Load/Save RF Kill Switch Status of rfkill0.
[ 9.644216] systemd-fsck[239]: /dev/mmcblk0p1: 124 files, 2666/8057 clusters
[^[[32m OK ^[[0m] Started File System Check on /dev/mmcblk0p1.
[^[[32m OK ^[[0m] Started Load/Save Random Seed.
Mounting /boot...
[^[[32m OK ^[[0m] Mounted /boot.
Warum ist die Protokolldatei in diesen beiden Fällen völlig unterschiedlich?
sudo shutdown -rF now
? Boot.log sieht ganz anders aus.Das, was ich für eine alte, stabile Version von Jessie verwende, am Ende der Zeile in
cmdline.txt
:forcefsck
Ich habe auch Folgendes in
fstab
:/dev/mmcblk0p1 /boot vfat defaults,noatime 0 2 /dev/mmcblk0p2 / ext4 defaults,noatime 0 1
Beachten Sie das1
und2
am Ende der ZeileEs überprüft und repariert die Root-Partition (/ dev / mmcblk0p2) bei jedem Start (@JulianKnight not / dev / sda2).
Was im ursprünglichen OP beschrieben ist, funktioniert immer noch für Wheezy auf RPi:
sudo touch /forcefsck
@WillianPaixao nach Wheezy wird die
-F
Optionshutdown
nicht mehr unterstütztDas Erzwingen einer Dateisystemprüfung ist (meistens) an die Kernel-Version gebunden. Irgendwann nach Debian 8.0 (in 8.2?) Wurde sie wie in der Antwort von @goldilocks beschrieben geändert.
quelle
Sie sollten auch in der Lage sein, Folgendes zu tun, was für jedes Linux funktionieren sollte, nicht nur für den Pi (offensichtlich ändert sich das Gerät für verschiedene Plattformen, sda2 sollte für eine Standard-Pi-SD-Karte geeignet sein):
Das sollte bei jedem Neustart eine Überprüfung setzen. Sie können die Nummer beliebig ändern. Verwenden Sie -i anstelle von -c, wenn Sie eine zeitbasierte Überprüfung wünschen. Weitere Informationen finden Sie auf der Manpage.
quelle
Ich benutze
shutdown
mit-F
Parameter. [1]quelle
man shutdown
Raspbian überprüft - es gibt dort keine -F-Option.