Optional: Filtern Sie die wiederhergestellten Dateien

Optional: Filtern Sie die wiederhergestellten Dateien

Beim Versuch, die Schreibgeschwindigkeit einer SD-Karte mit wichtigen Dateien zu messen, ist mir ein Fehler unterlaufen.

sync; sudo dd if=/dev/zero of=/dev/sdb1 bs=1M count=1024; sync
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 23.5386 s, 45.6 MB/s
^C

Mir fiel auf, dass ich direkt in /dev/sdb1 schrieb, anstatt in eine Datei auf der gemounteten Karte. Aus Angst, Daten zu überschreiben, brach ich ab, gleich nachdem der Benchmark scheinbar vorbei war (was er aber nicht war). Jetzt wird es automatisch gemountet, zeigt aber nichts an (kann im Datei-Explorer nicht darauf klicken, und gparted zeigt es nur als unbekannte Exfat-Karte an).

Was kann ich machen?

Antwort1

Es gibt viele Wiederherstellungsanwendungen, ich persönlich finde, dass diese photorecam foremostbesten funktionieren. Photorec ist Teil des testdiskPakets und kann aus dem foremostPaket installiert werden.

a) Fotorec

Führen Sie es jetzt einfach aus $ photorec /dev/sdb, um die interaktive Benutzeroberfläche von Photorec zu öffnen.

Drücken Sie die Eingabetaste ( [Proceed]), um die Festplatte auszuwählen. Im nächsten Bildschirm werden Sie aufgefordert, eine Partition auszuwählen. Wenn Photorec die richtigen Partitionen findet, können Sie hier die Partition auswählen, von der Sie die Dateien wiederherstellen möchten. Wenn die Partitionen nicht richtig erkannt werden, wählen Sie sie einfach aus No partition [Whole disk]und drücken Sie erneut die Eingabetaste, um die auszuführen [Search]. Nachdem Sie im nächsten Bildschirm den Dateisystemtyp ausgewählt haben, müssen Sie ein Verzeichnis auswählen, in dem die wiederhergestellten Dateien gespeichert werden sollen. Bestätigen Sie mit C.

b) Vor allem

Während photorec versucht, "Datenblöcke" des Laufwerks und des Mediums darin zu finden,Dateischnitzen, Foremost macht es ein bisschen anders. Es verwendet immer noch das File-Carving-Konzept, ignoriert aber den Typ des zugrunde liegenden Dateisystems und funktioniert direkt, indem es Segmente des Laufwerks in Ihren RAM kopiert, der dann nach Dateikopfzeilentypen durchsucht wird. Foremost verfügt über viele integrierte Kopfzeilen, um die meisten gängigen Dateitypen wiederherzustellen. Wenn Sie benutzerdefinierte Kopf-/Fußzeilen hinzufügen möchten, um weniger gängige Dateitypen zu erkennen, bietet Ihnen Foremost diese Möglichkeit.

Um Frontier mit den Standardoptionen für das Image auszuführen, führen Sie den folgenden Befehl aus:

$ foremost -i /dev/sdb -v

Sie können /dev/sdb1es hier verwenden, wenn Sie nur Dateien von dieser Partition wiederherstellen möchten.

Dadurch werden alle wiederhergestellten Dateien in output(dem neuen Verzeichnis, das in erster Linie erstellt wird) gespeichert. Sie können mit dem Flag ein anderes Ausgabeverzeichnis angeben -ound -aFehler ignorieren/beschädigte Dateien speichern.

Optional: Filtern Sie die wiederhergestellten Dateien

Dies ist optional, aber manchmal sind Sie nur an bestimmten Dateitypen interessiert, oder noch schlimmer: Wiederherstellungstools liefern Ihnen eine Million Dateien, von denen Tausende beispielsweise wie JPEG-Dateien aussehen, aber in Wirklichkeit sind es nur beschädigte Dateien und überhaupt keine Bilder. Um diese herauszufiltern, können Sie verwendenDasAntwort, die ich auf eine andere Frage auf SuperUser gegeben habe.


Wie können Sie dies in Zukunft verhindern?

ddIch sehe viel zu oft, wie Leute ihre Daten durcheinanderbringen . Es ist einfach zu einfach. Meine Empfehlung:

#!/bin/bash
read -r -p "Have you checked at least TWICE if the parameters are correct? [y/N] " response
response=${response,,}
if [[ "$response" =~ ^(yes|y)$ ]]; then
    dd "$@"
else
    echo "Better be safe than sorry."
fi

Speichern Sie dies unter /usr/bin/sddoder einem beliebigen Namen. Verwenden chmod +xSie es anschließend. Verwenden Sie von nun an immer sddanstelle von dd.

verwandte Informationen