
Es gab ein Problem mit einem EXT4 FS/einer Speicherkarte und nach einem fsck wurden alle Dateien in das Verzeichnis „Lost+Found“ verschoben.
Frage: Wie kann ich den alten Dateinamen/die alte Hierarchie aus Lost+Found wiederherstellen? Oder ist das unmöglich? Eine Wiederherstellung aus einem Backup ist davon ausgenommen.
Antwort1
Sie können den ursprünglichen Namen und Speicherort einer Datei nicht finden, /lost+found
da dieswas lost+found
ist mit: Hier fsck
werden Dateifragmente abgelegt, die nirgends im Verzeichnisbaum angehängt werden konnten. Wenn der Speicherort bekannt gewesen wäre, fsck
hätte man die Datei dort gelassen, wo sie hingehört.
Es ist theoretisch möglich, dass fsck
nur Teilinformationen vorliegen, beispielsweise der Dateiname, aber nicht der Verzeichnisspeicherort. Dies kommt bei einem typischen Dateisystem jedoch nicht vor.
Möglicherweise finden Sie Hinweise in der Datei selbst.file
Befehl wird Ihnen zumindest sagen, um welche Art von Datei es sich handelt (falls er sie erkennt). Einige Dateien enthalten zusätzliche Informationen; JPEG- und TIFF-Bilder können beispielsweise enthaltenEXIFDaten, MP3-Dateien können enthaltenID3-Tags, usw.
Antwort2
Als ich das letzte Mal – vor vielen Jahren – tun musste, musste ich anhand des Dateiinhalts raten. Ich bezweifle, dass es heute eine bessere Methode gibt.
Hierbei kann Ihnen das Programm „Datei“ weiterhelfen, da es Ihnen einen Überblick über die Art der Daten gibt und Sie die Dateien damit zunächst entsprechend betrachten können.
Antwort3
In meinem Fall gab es beim Lesen einen I/O-Fehler. Und nach dem Ausführen von e2fsck
habe ich die meisten meiner Dateien in lost+found
Unterordnern gefunden, und die meisten Dateien (und Dateinamen) warenOK.
Gehen Sie also zu lost+found
, laufen
find | less
und sehen Sie, ob Sie Ihre Dateien finden. Viel Glück!
Antwort4
Dateinamen und Hierarchie nein, aber die Verwendung von Dateien kann Ihnen helfen, einige Dinge wiederherzustellen. Ich verwende den Joe-Editor, der rechteckige Auswahlmöglichkeiten hat, wenn Sie diese aktivieren. Ich könnte also „ls > ques“ ausführen und dann mit Suchen und Ersetzen eine Liste von Anweisungen wie „Datei „#133024“ > 133024.txt“ erstellen. Ich habe das als sh-Skript ausgeführt und konnte dann „grep PDF *.txt > pdflist“ ausführen. Nachdem ich das in einem mc-Viewer und einem anderen mc in einem anderen Terminal geöffnet hatte, habe ich pdflist.txt durchgesehen und alle PDFs in ihr eigenes Verzeichnis verschoben. Sie können dasselbe mit ASCII-Textdateien und allem anderen tun, was es identifiziert.
Es gibt auch seltsame Überraschungen wie „#410423: gzip-komprimierte Daten, waren „x264_git.tar““. Sie können auch „cat *.txt > filelist“ verwenden, um alle Beschreibungen in einer Datei zu erhalten.