Wenn ich meinen PC nach einem Update für Windows zurücksetze, kann mein Ubuntu-Terminal die Daten auf meinen C- und D-Festplatten der MNT-Datei nicht mehr anzeigen. Wenn ich ls
es verwende, wird es erstellt.
:/mnt$ls
ls: cannot access 'd': Input/output error
ls: cannot access 'c': Input/output error
Ich habe versucht, das Problem mit dem Befehl zu beheben fsck
und habe die folgenden Ergebnisse erhalten:
:/mnt$sudo fsck
fsck from util-linux 2.34
fsck.ext4: Unable to resolve 'LABEL=cloudimg-rootfs'
Ich googele noch, aber ich wäre dankbar, wenn mir jemand helfen könnte, der sich schon einmal damit befasst hat.
Antwort1
Inkonsistente Montage und/etc/fstab
Ich begann, die Read-only file system
Fehlermeldungen zu sehen und stellte fest, dass mein gemountetes Root-Laufwerk-Gerät nicht mit dem in angegebenen übereinstimmte /etc/fstab
.
$ mount | grep ext4
/dev/sdc on / type ext4 (rw,relatime,discard,errors=remount-ro,data=ordered)
$ cat /etc/fstab
/dev/sda / ext4 defaults 0 0
Interessant war, dass ich ein oder zwei Minuten lang schreiben konnte, aber mit der Zeit begannen die Fehler aufzutreten.
Früherer Fehler
Vor ein paar Monaten habe ich es /etc/fstab
manuell geändert, ursprünglich lautete es:
$ cat /etc/fstab
LABEL=cloudimg-rootfs / ext4 defaults 0 0
Ich habe es geändert, um direkt darauf zu verweisen, /dev/sda
da in meinem System kein beschriftetes Gerät vorhanden war. Ich weiß nicht, woher die Beschriftung cloudimg-rootfs
stammt. Meine WSL2-Festplatte wurde ursprünglich mit WSL1 erstellt, vielleicht haben sie die Festplatte so beschriftet? Dann hat WSL2 sie entfernt?
Eine Zeit lang funktionierte das problemlos, doch dann begann ich vor Kurzem, Fehlermeldungen zu erhalten Read-only file system
.
An diesem Punkt bemerkte ich, dass sich mein Stammlaufwerk in & geändert hatte, auf das ich in /dev/sdc
immer noch verwies ./dev/sda
/etc/fstab
Fix
Ich erinnerte mich an meine Änderung von /etc/fstab
und daran, dass es sich auf ein bezog LABEL
, nicht auf das Laufwerk.
- Innerhalb des 2-Minuten-Fensters habe ich Folgendes geändert,
/etc/fstab
um auf das neue Root-FS-Laufwerk zu verweisen:/dev/sdc / ext4 defaults 0 0
- WSL neu starten
- Überprüfen Sie, ob die Laufwerksbuchstaben zwischen
mount
&/etc/fstab
nach dem Neustart konsistent sind. Zu diesem Zeitpunkt konnte ich ohne Fehler in das Dateisystem schreiben. - Bezeichnung zu meinem Root-FS-Laufwerk hinzufügen (in meinem Fall
/dev/sdc
):sudo e2label /dev/sdc "ROOTFS"
- Überprüfen Sie, ob das Etikett geändert wurde
$ sudo blkid -o list
device fs_type label mount point UUID
-----------------------------------------------------------------------------------------------------------------------
/dev/sda ext4 (in use)
/dev/sdb swap [SWAP] 4906c2f2-XXX-YYY-ZZZ-aa65bf88a5c3
/dev/sdc ext4 ROOTFS / 3255683f-XXX-YYY-ZZZ-b4c1041e2a62
- ändern
/etc/fstab
, um auf mein neues Label zu verweisen:LABEL=ROOTFS / ext4 defaults 0 0
- WSL neu starten
- Überprüfen Sie, ob ich jetzt in das Root-Dateisystem schreiben kann.
Da die Bezeichnung zwischen den Neustarts gleich bleibt, fstab
sollte es keine Probleme geben.
Alles gut!
Antwort2
Versuchen Sie, die Stromversorgung der Festplatte zu überprüfen
Dies liegt häufig an einer zu geringen Leistungsabgabe. Ihr Netzteil ist möglicherweise auf Energiesparen eingestellt (aus irgendeinem Grund?) oder die Steckdose ist möglicherweise seltsam/schwach.
warum diese Antwort? Ich hatte das gleiche Problem; und nach Jahrenja JahreSachen auszuschließen usw.; ich habe plötzlich herausgefunden, dass es meins war power outlet
, und komischerweise hat es sich von selbst gelöst, indem ich das Kabel verkehrt herum hingelegt habe (Hinweis: Das muss bei Ihnen nicht der Fall sein). Aber die Fehler sind sehr ähnlich wie das Stromproblem. Überprüfen Sie Kabel und dergleichen sowie die Energiemodi. Ist das BIOS auf SavePower eingestellt? Wenn ja, versuchen Sie, auf Normal oder was auch immer es vorher war, zu wechseln.
wie einige angemerkt haben, können Schnellstart, Ruhezustand oder Dualstart problematisch sein. Verwenden Sie zunächst ein LIVE-ISO (Linux), um ein Image als Backup zu erstellen (kopieren Sie nicht Datei für Datei), falls das funktioniert.
Links
Eingabe-/Ausgabefehler auf externer Festplatte und fehlerhafte Sektoren
wenn möglich, wäre es sinnvoll,
sudo dmesg
Und
sudo journalctl
und posten Sie die Ausgabe (Redigierenalle sensiblen Informationen), wenn Sie es einschalten und ein wenig warten; bis das Problem entweder erneut auftritt; oder wenn Sie ein Terminal öffnen und etwas eingeben ls
und es erscheint;