GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux – Datenwiederherstellung nach dem Kopieren der Datei auf das Blockgerät?

Ich habe eine NTFS-formatierte USB-Festplatte, auf der meine persönlichen Dateien gesichert sind.
Heute habe ich die Festplatte in ein Oracle-Linux-System gemountet und eine reguläre Datei mit dem folgenden Befehl kopiert (siehe unten stehende Befehle). Aus Versehen habe ich die Gerätedatei /dev/sdb1 verwendet während des Kopierens.

mount -t ntfs-3g /dev/sdb1 /sample
cp file1 /dev/sdb1

Danach habe ich das Laufwerk ausgehängt und mit dem Windows-System verbunden. Jetzt beschwert sich das Windows-System, dass das Laufwerk formatiert und/oder beschädigt werden muss.

Meine Frage ist:Können wir dieses Laufwerk wiederherstellen, ohne persönliche Daten zu verlieren? Wie kann ich die auf diesem Laufwerk verfügbaren Dateien anzeigen? Wenn Sie einfach wieder in das Linux-System einsteigen, werden die Dateien angezeigt?

Akzeptierte Antwort:

Ich habe auf eine sehr ähnliche Frage in den Fragen und Antworten zu Softwareempfehlungen geantwortet Webseite.

Die Dateien, die Sie verloren haben

Können wir dieses Laufwerk wiederherstellen, ohne persönliche Daten zu verlieren?

Wenn Sie mit „persönlichen Daten“ von Benutzern generierte Daten meinen (außer Systemdateien), kann dies der Fall sein, jedoch nur, wenn Ihr NTFS-Laufwerk ein Betriebssystem enthält (wahrscheinlich Windows). Angenommen, die von Ihnen geschriebene Datei war nicht sehr groß, haben Sie nicht mehr als die ersten 4-5 GB des Dateisystems überschrieben, die von Windows belegt worden wären.

Wenn Ihr Laufwerk nur Benutzerdateien enthielt, dann ist es fast sicher, dass Sie einige davon verloren haben, um es gelinde auszudrücken.

Versuchen Sie nicht, die Partition einzuhängen

Wie kann ich die auf diesem Laufwerk verfügbaren Dateien anzeigen? Wenn Sie einfach wieder in das Linux-System einsteigen, werden die Dateien angezeigt?

Nein, tun Sie das nicht. Wenn Sie die wiederhergestellte Datenmenge maximieren möchten, versuchen Sie nicht, mit normalen Tools erneut auf das Laufwerk zuzugreifen. Versuchen Sie nicht, es mit fsck zu beheben oder ähnliche Programme.

Klonen Sie das Laufwerk

Sie sollten zuerst das Laufwerk klonen und vermeiden, das Original wiederherzustellen. Sie können ddrescue verwenden um eine Kopie durchzuführen, selbst wenn das Laufwerk Hardwareschäden aufweist (Ihres nicht, aber es ist immer noch ein nützliches Werkzeug):

ddrescue /dev/sda /media/user/External/copy.img /media/user/External/status.log

Siehe meine Antwort auf Rohkopie von ausgefallener Festplatte für eine ausführliche Erklärung.

Dateien aus der Kopie wiederherstellen

Haftungsausschluss: Ich bin der Autor von RecuperaBit.

Jetzt können Sie versuchen, Dateien von copy.img wiederherzustellen . Wenn Sie nur den Anfang der Partition ruiniert haben, sagen wir bis zu ein paar Megabyte, können Sie sie wahrscheinlich mit testdisk wiederherstellen :

testdisk copy.img

Das Programm sucht nach dem gesicherten NTFS-Bootsektor und versucht, den Inhalt der Partition zu lesen. Sie können die Dateien auflisten, indem Sie P drücken nachdem es das Laufwerk analysiert hat und Sie die richtige Partition markieren.

Verwandt:Sicherungen auf Byte- oder Dateiebene?

Wenn dies funktioniert, können Sie den C verwenden Schaltfläche, um eine oder mehrere Dateien/Ordner zu kopieren. Die Textschnittstelle zeigt einen Schritt-für-Schritt-Prozess, dem nicht schwer zu folgen ist.

Wenn der Schaden schwerwiegend ist und Testdisk die Partition nicht mounten kann, können Sie die Dateien mit RecuperaBit wiederherstellen, aber der Vorgang dauert länger. RecuperaBit versucht, Dateisystemstrukturen zu rekonstruieren und Dateien wiederherzustellen. Derzeit wird nur NTFS unterstützt. RecuperaBit versucht die Rekonstruktion der Verzeichnisstruktur unabhängig von:

  • fehlende Partitionstabelle
  • unbekannte Partitionsgrenzen
  • teilweise überschriebene Metadaten
  • Schnellformatierung

Sie können die Analyse starten mit:

mkdir /media/user/External/recovered_files
cd [full path of recuperabit]
pypy main.py /media/user/External/copy.img -o /media/user/External/recovered_files -s /media/user/External/savefile.save

Geben Sie dann recoverable ein und ermitteln Sie die ID Ihrer Partition. Angenommen, es ist 2 , geben Sie Folgendes ein:

restore 2 5
restore 2 -1

Um die Dateien wiederherzustellen, die vom Stamm erreichbar sind (5 ) und diejenigen, die es nicht sind (-1 ). Siehe auch hier meine ursprüngliche Antwort für weitere Details und einige Vorbehalte, auf die Sie stoßen könnten.


Linux
  1. Kopieren Sie Dateien im Linux-Terminal

  2. Verschieben Sie Dateien im Linux-Terminal

  3. So verhindern und wiederherstellen Sie versehentliches Löschen von Dateien in Linux

  4. Wie kann man gelöschte Dateien unter Linux mit dem Scalpel-Datenwiederherstellungstool wiederherstellen?

  5. Wie unterscheidet Linux zwischen echten und nicht existierenden (z. B. Geräte-) Dateien?

So kürzen Sie (leere) Dateien in Linux

ls-Befehl in Linux zum Auflisten von Dateien

So benennen Sie eine Datei (en) in Linux um

Unter Linux ist alles eine Datei – Teil 1

Top 20 der besten Linux-Datenwiederherstellungstools zur Wiederherstellung gelöschter/beschädigter Dateien

So komprimieren Sie eine Datei unter Linux