Nach einem unsauberen Herunterfahren auf einem SD-Karten-basierten Gerät habe ich die SD-Karte in fsck
das Root-Dateisystem herausgenommen. Dies führte zu Abweichungen bei folgenden Punkten:
e2fsck 1.43.1 (08-Jun-2016)
/dev/sdc2: recovering journal
Superblock needs_recovery flag is clear, but journal has data.
Run journal anyway<y>? no
Clear journal<y>? no
e2fsck: unable to set superblock flags on /dev/sdc2
Hier habe ich beide Male mit "Nein" geantwortet, aber es gibt keine Folge von Ja / Nein, die nicht sofort zum gleichen Ergebnis führt.
Das Dateisystem kann gemountet werden und bei gelegentlicher Überprüfung erscheint es in Ordnung. es funktioniert auch gut im Gerät, und das ist das Root-Dateisystem (tatsächlich stellte sich heraus, dass es nicht ganz in Ordnung ist, siehe Kommentare; einige unwiederbringlich beschädigte Verzeichnisse).
Ich würde dd
die Partition (8 GB) in eine Datei umwandeln und fsck darauf versuchen. Interessant:
e2fsck 1.43.1 (08-Jun-2016)
plush.rootfs: recovering journal
Clearing orphaned inode 18290 (uid=0, gid=0, mode=0100644, size=34096)
Clearing orphaned inode 18270 (uid=0, gid=0, mode=0100644, size=38916)
Clearing orphaned inode 18250 (uid=0, gid=0, mode=0100644, size=1128076)
Clearing orphaned inode 11411 (uid=0, gid=0, mode=0100644, size=293108)
Setting free inodes count to 406127 (was 408580)
Setting free blocks count to 1305622 (was 1347486)
plush.rootfs: clean, 60209/466336 files, 604906/1910528 blocks (check after next mount)
Nach einer anschließenden fsck
Bereinigung kann das Image gemountet werden, und fsck -f
danach ist es ebenfalls erfolgreich.
Das Dateisystem auf der Karte, von der das Rohblockkopie-Image erstellt wurde, weist jedoch immer noch das gleiche Problem auf - mit der Ausnahme, dass systemd-fsck
das Dateisystem , das während des Startvorgangs stattfindet, das Dateisystem als "sauber" protokolliert. Anschließend führt jedoch ein ordnungsgemäßes Herunterfahren, Herausnehmen der Karte und fsck
erneutes Ausprobieren aus einer anderen Box zu demselben Fehler.
Wenn das Original auf einem anderen Computer bereitgestellt wird, werden im Syslog folgende Hinweise angezeigt:
kernel: EXT4-fs (sdc2): 4 orphan inodes deleted
kernel: EXT4-fs (sdc2): recovery complete
Da ich alles gesichert habe, bin ich offen dafür, hier etwas zu versuchen. Ich könnte dies einfach vergessen und die Partition aus dem scheinbar festen Image zurückbrennen, aber das scheint keine sehr zufriedenstellende Lösung zu sein, da dies bedeutet, dass fsck bei der Lösung eines geringfügig aussehenden Problems kryptisch gescheitert ist.
Ich vermute, dass dies zu einer Frage "Anfrage nach offizieller Dokumentation" in Bezug auf Dinge wie " Bedarfswiederherstellungsflag" (oder einfach nur "Was bedeutet das?" - Frage wird. Daher sind Vorschläge in dieser Richtung willkommen.
apt upgrade
). Danach wird ein normaler Start protokolliert - und das systemd-fsck sagt "clean" (ich werde das in bearbeiten), aber der Versuch, fsck außerhalb dieses Kontexts zu versuchen, schlägt immer noch fehl.