Heim > Computer-Tutorials > Computerwissen > Verwenden Sie ddrescue, um Daten unter Linux wiederherzustellen

Verwenden Sie ddrescue, um Daten unter Linux wiederherzustellen

PHPz
Freigeben: 2024-03-20 13:37:06
nach vorne
1142 Leute haben es durchsucht

DDREASE ist ein Tool zum Wiederherstellen von Daten von Datei- oder Blockgeräten wie Festplatten, SSDs, RAM-Disks, CDs, DVDs und USB-Speichergeräten. Es kopiert Daten von einem Blockgerät auf ein anderes, wobei beschädigte Blöcke zurückbleiben und nur gute Blöcke verschoben werden. ddreasue ist ein leistungsstarkes Wiederherstellungstool, das vollständig automatisiert ist, da es während der Wiederherstellungsvorgänge keine Unterbrechungen erfordert. Darüber hinaus kann es dank der ddasue-Map-Datei jederzeit gestoppt und fortgesetzt werden. Weitere Hauptmerkmale von DDREASE sind wie folgt:

  • Die wiederhergestellten Daten werden nicht überschrieben, aber im Falle einer iterativen Wiederherstellung werden die Lücken geschlossen. Es kann jedoch gekürzt werden, wenn das Tool explizit dazu aufgefordert wird.
  • Stellen Sie Daten aus mehreren Dateien oder Blöcken in einer einzigen Datei wieder her.
  • Unterstützt mehrere Arten von Geräteschnittstellen, wie SATA, ATA, SCSI, MFM-Laufwerke, Disketten und SD-Karten.

In diesem Leitfaden werde ich einen detaillierten Blick auf dieses leistungsstarke Datenwiederherstellungstool werfen und seine Installationsschritte und die Verwendung zur Wiederherstellung von Blockgeräten oder Partitionen besprechen.

  • Installieren Sie ddrescue
  • Lernen Sie die Grundlagen
  • Wichtige Überlegungen
  • Verwenden Sie DDREASE
  • Reparieren Sie kaputte Blöcke
  • Bilddateien in neuen Blöcken wiederherstellen
  • Datenblock in einem anderen Datenblock wiederherstellen
  • Bestimmte Daten aus gespeicherten Bilddateien wiederherstellen
  • Erweiterte Funktionen
  • So funktioniert ddrescue
  • Fazit

Bitte beachten Sie: In dieser Anleitung verwende ich eine Linux-Distribution (Ubuntu 22.04). Die Installationsschritte für das Ddreasure-Dienstprogramm können je nach Distribution variieren, die Richtlinien gelten jedoch allgemein für alle Linux-Distributionen.

Installieren Sie ddrescue

Um ddrescue unter Linux, insbesondere Ubuntu und seinen Versionen oder Debian-basierten Distributionen, zu installieren, verwenden Sie: Zweck:

sudo apt install gddrescue

Um es auf REHL, Fedora und CentOS zu installieren, aktivieren Sie zunächst ETEL (Extra Packages für Enterprise Linux).

sudo yum install epel – release

Die oben genannten Befehle gelten für neuere Versionen der jeweiligen Distributionen.

Führen Sie dann den folgenden Befehl aus, um ddreasue zu installieren:

sudo yum install ddrescue

Für Arch-Linux-basierte Distributionen wie Arch-Linux und Manjaro installieren Sie das ddrescue-Wiederherstellungsdienstprogramm mit dem unten angegebenen Befehl.

sudo pacman – S ddrescue

Da ich Ubuntu 22.04 verwende, verwende ich zur Installation den APT-Paketmanager.

Lernen Sie die Grundlagen

Bevor ich das ddreasue-Tool zum Wiederherstellen von Daten verwende, empfehle ich Benutzern, die mit dem Wiederherstellungsprozess nicht vertraut sind, einige Namenskonventionen von Linux zu verstehen.

Linux erkennt Blöcke (Geräte) als Dateien und legt sie im Verzeichnis /dev ab. Um die Dateien im Verzeichnis /dev aufzulisten, verwenden Sie den Befehl ls/dev.

Festplatten (Speicherblöcke) werden durch sd und das Alphabet dargestellt; bei mehreren Speichergeräten werden Dateien als /dev/sda, /dev/sdb usw. dargestellt.

Wenn das Speichergerät über Partitionen verfügt, werden diese durch Nummern mit entsprechenden Laufwerksdateinamen dargestellt, z. B. /dev/sda1, /dev/sda2 usw.

Um alle Blöcke und andere verbundene Geräte im System aufzulisten, verwenden Sie den Befehl list block lsblk:

lsblk

Verwenden Sie ddrescue, um Daten unter Linux wiederherzustellen

Der Befehl

ddrescue kann ganze Blöcke (einschließlich MBR und Partitionen) oder Partitionen wiederherstellen. Wenn Sie hingegen nur bestimmte Dateien von einer bestimmten Partition wiederherstellen müssen, ist es besser, die Partition und nicht den gesamten Block wiederherzustellen.

Wichtige Überlegungen

Es gibt einige sehr wichtige Punkte, die vor der Verwendung des ddue-Dienstprogramms berücksichtigt werden sollten:

  • Versuchen Sie nicht, einen gemounteten Block wiederherzustellen, er sollte sich nicht einmal im schreibgeschützten Modus befinden.
  • Versuchen Sie nicht, Datenblöcke mit E/A-Fehlern zu reparieren.
  • Das System kann beim Neustart die Namen der Eingabe- und Ausgabegeräte ändern. Stellen Sie vor Beginn des Kopiervorgangs sicher, dass der Gerätename korrekt ist.
  • Wenn Sie einen separaten Block als Ausgabegerät verwenden, werden alle Daten auf dem Gerät überschrieben.

Verwenden Sie ddrescue

Nachdem Sie das ddrescue-Dienstprogramm installiert und die Namenskonvention verstanden haben, besteht der nächste Schritt darin, die ausgefallene Festplatte zu identifizieren und sie mit dem ddrescue-Tool wiederherzustellen.

Beschädigte Blöcke reparieren

Das erste Beispiel beinhaltet den Prozess der Wiederherstellung des gesamten Blocks. Listen Sie zunächst die Blöcke mit dem Befehl lsblk auf:

lsblk – o Name, Größe, FSTYPE

Das Flag

-o wird verwendet, um anzugeben, welche Art von Informationen (Feld) der Befehl ausgeben soll. Ich habe Name, Größe und FSTYPE oder Dateisystemtyp erwähnt.

Verwenden Sie ddrescue, um Daten unter Linux wiederherzustellen

Jetzt können Sie den Zielblock, die Partition und den Speicherort zum Speichern der geretteten Image-Datei bestimmen.

Ein weiterer wichtiger Punkt ist, dass unter Linux Blocknamen beim Booten dynamisch zugewiesen werden und sich der Name des Blocks nach einem Neustart ändern kann. Seien Sie also vorsichtig, wenn Sie Blocknamen aufschreiben.

Verwenden Sie nun die folgende Syntax, um den Block als Bilddatei zu speichern und die Protokolldatei im Stammverzeichnis zu verwenden.

sudo ddrescue – d – rX/dev/[block][pfad/name].

Hinweis: Ersetzen Sie [Block], [Pfad/Name] und [Protokolldateiname] der Bilddatei entsprechend durch den bevorzugten Namen.

In diesem Beispiel stelle ich /dev/sda im Stammverzeichnis unter Verwendung des Bilddateinamens „recovery.img“ wieder her. Protokolldateien (auch Map-Dateien genannt) sind erforderlich, wenn die Wiederherstellung jederzeit fortgesetzt werden soll.

Sudo dd Rescue -d-r2/dev/sda2 restart.img restart.log

Im obigen Befehl werden zwei wichtige Flags verwendet.

D – Indirekt Wird verwendet, um dem Tool mitzuteilen, dass es direkt auf die Festplatte zugreifen und den Kernel-Cache ignorieren soll
RX -Wiederholen-Bestanden Wird verwendet, um dem Tool mitzuteilen, dass es fehlerhafte Sektoren X-mal wiederholen soll

Während Sie den obigen Befehl ausführen, werden Sie feststellen, dass im Dateibrowser zwei Dateien namens „recovery.img“ und „recovery.log“ angezeigt werden.

Verwenden Sie ddrescue, um Daten unter Linux wiederherzustellen

Die Wiederherstellungszeit hängt von der Größe und Beschädigung des Eingabeblocks ab. Wenn Sie große Datenblöcke wiederherstellen möchten, empfehle ich die Verwendung von Protokolldateien, da der Vorgang Stunden oder sogar Tage dauern kann.

Die Ausgabe des obigen Befehls lautet wie folgt:

Verwenden Sie ddrescue, um Daten unter Linux wiederherzustellen

Im Ausgabebild ist ipos der Eingabeort der Eingabedatei, von dem aus der Kopiervorgang beginnt, und opos ist der Ausgabeort der in die Ausgabedatei geschriebenen Daten.

Nicht versuchen ist die Größe des Blocks, ohne auf einen Versuch zu warten. „Gerettet“ stellt die Größe der erfolgreich wiederhergestellten Blöcke dar. „Geretteter PCT“ gibt den Prozentsatz der erfolgreich wiederhergestellten Daten an. Die Begriffe „nicht beschnitten“, „nicht verschrottet“, „schlechte Sektoren“ und „schlechte Bereiche“ sind selbsterklärend. Allerdings stellen Lesefehlerterme fehlgeschlagene Leseversuche numerisch dar.

Die Laufzeit zeigt die Zeit an, die das Tool benötigt hat, um den Vorgang abzuschließen, während die verbleibende Zeit die verbleibende Zeit ist, um den Wiederherstellungsprozess abzuschließen. Die obige Ausgabe zeigt, dass die verbleibende Zeit 0 beträgt, da der Prozess abgeschlossen ist. Bitte lesen Sie die Ausgabe unten im Bild des unvollendeten Prozesses.

Verwenden Sie ddrescue, um Daten unter Linux wiederherzustellen

Sehen wir uns an, was wir in der Protokolldatei erhalten. Um die generierte Protokolldatei zu öffnen, verwenden Sie den Befehl vim Recovery.log.

Verwenden Sie ddrescue, um Daten unter Linux wiederherzustellen

current_status ist +, was das Ende des Prozesses anzeigt, und current_pos ist die Position im Block.

Die aktuelle Statusliste finden Sie in der folgenden Tabelle:

? Kopieren
* Zuschneiden
/ Schrott
Versuchen Sie es noch einmal
F Füllen Sie den angegebenen Block aus
G Protokolldateien generieren
+ Der Vorgang ist abgeschlossen

Darunter zeigt die Protokolldatei den Status zuvor geretteter Chunks in den unten aufgeführten Zeichen:

? Block noch nicht ausprobiert
* Unbeschnittener Glitch-Block
/ Ungültige Blöcke, die nicht gelöscht werden
Fehlerhafter Sektor-Datenblock fehlgeschlagen
+ Kompletter Block

Bilddateien in neuen Blöcken wiederherstellen

Sobald Sie den Wiederherstellungsprozess abgeschlossen haben und über die Image-Datei verfügen, möchten Sie diese möglicherweise vom beschädigten Laufwerk auf das neue Laufwerk verschieben. Um eine Bilddatei in einen neuen Block zu verschieben, verbinden Sie zunächst den Block mit dem System und verwenden Sie dann den Befehl lsblk, um den Blocknamen zu identifizieren.

Angenommen, es ist /dev/sdb, verwenden Sie den folgenden Befehl, um das Image in einen neuen Block zu kopieren.

sudo ddrescue – f Recovery

Wenn Daten vorhanden sind, verwenden Sie das Flag -f, um den neuen Block zu überschreiben. Denken Sie daran, dass die Protokolldatei einen anderen Namen haben muss, um sie von zuvor gespeicherten Protokolldateien zu trennen.

Der obige Vorgang kann auch mit dd ausgeführt werden, einem weiteren leistungsstarken Befehl zum Kopieren von Dateien.

sudo dd if = img of =/dev/sdb

Bevor Sie mit der Wiederherstellung fortfahren, denken Sie bitte daran, dass der neue Block groß genug sein muss, um den gesamten wiederhergestellten Block zu erhalten. Wenn der wiederhergestellte Block beispielsweise 5 GB groß ist, sollte der neue Block größer als 5 GB sein.

Wenn die wiederhergestellte Image-Datei viele Fehler aufweist, können diese bis zu einem gewissen Grad mit dem Befehl fsck unter Linux repariert werden. Unter Windows können Sie dazu den Befehl CHKDSK oder SFC verwenden. Die Wiederherstellung hängt jedoch von der Anzahl der durch die beschädigte Datei verursachten Fehler ab.

Jetzt sind der Wiederherstellungsprozess und die Reparaturarbeiten abgeschlossen. Ein weiterer wichtiger Punkt ist, dass Sie, anstatt eine Bilddatei zu erstellen und diese dann in den neuen Block zu kopieren, den beschädigten Block direkt in einem anderen Block wiederherstellen können. Okay, im nächsten Abschnitt werde ich detailliert auf diesen Prozess eingehen.

Datenblock in einem anderen Datenblock wiederherstellen

Um einen Block direkt in einen neuen Block wiederherzustellen, verbinden Sie den Block zunächst mit dem System und verwenden Sie dann erneut den Befehl lsblk, um den Blocknamen zu identifizieren. Falsche Blocknamen können den gesamten Prozess stören und zu Datenverlust führen.

Nachdem Sie die Quell- und Zielblöcke identifiziert haben, verwenden Sie den folgenden Befehl, um den Block wiederherzustellen:

sudo ddrescue – d – f – r2/dev/[Quelle]/dev/[Ziel] backup.log

Angenommen, /dev/sdb ist der Zielblock. Um das Verzeichnis /dev/sda in den neuen Block zu kopieren, verwenden Sie:

Sudo ddue-d-f-r2/dev/sda/dev/sdb backup.log

Bevor Sie diesen Vorgang durchführen, lesen Sie bitte die wichtigsten Überlegungen, die in den vorherigen Abschnitten erwähnt wurden.

Bestimmte Daten aus gespeicherten Bilddateien wiederherstellen

In vielen Fällen besteht der Zweck der Datenwiederherstellung darin, bestimmte Dateien auf einem beschädigten Laufwerk zu finden. Um auf bestimmte Dateien zuzugreifen, müssen Sie die Bilddatei mounten. Unter Linux kann die wiederhergestellte Image-Datei mit dem Befehl „mount“ durchsucht werden.

Bevor Sie die Bilddatei bereitstellen, erstellen Sie einen Ordner oder ein Verzeichnis, in das Sie den Inhalt der Bilddatei extrahieren möchten.

mkdir Recovery Mount

Als nächstes mounten Sie die Bilddatei mit dem folgenden Befehl:

sudo mount – o-Loop-Recovery img~/Recovery Mount

Das Flag

—o gibt Optionen an, während die Loop-Option verwendet wird, um die Bilddatei als Blockgerät zu behandeln.

Sie können nun auf den Inhalt der Bilddatei zugreifen, wie im Screenshot unten gezeigt.

Verwenden Sie ddrescue, um Daten unter Linux wiederherzustellen

Um einen Block abzuhängen, verwenden Sie den Befehl umount.

SUDO deinstallieren~/Laden wiederherstellen

Erweiterte Funktionen

Um von einem bestimmten Punkt aus fortzufahren, verwenden Sie das Flag -i oder -input-position. Es sollte in Bytes angegeben werden und ist standardmäßig 0 Bytes. Es ist wichtig, die Replikation ab einem bestimmten Punkt fortzusetzen. Wenn Sie den Kopiervorgang beispielsweise ab dem 10-GB-Punkt starten möchten, verwenden Sie den folgenden Befehl.

sudo ddrescue – i10GiB/dev/sda-Imagedatei img logfile.log

Um die maximale Größe des Eingabegeräts zu definieren, wird das Flag -s verwendet. -s gibt die Größe in Bytes an, die auch als -size verwendet werden kann. Wenn das Tool die Größe der Eingabedatei nicht erkennt, verwenden Sie diese Option, um sie anzugeben.

Sudo ddreasure-s10GiB/dev/sda Imagefile.img log file.log

– Die Option „Fragen“ ist sehr praktisch, da sie vor Beginn des Kopiervorgangs zur Bestätigung der Eingabe- und Ausgabeblöcke auffordert. Wie bereits erwähnt, weist das System den Blöcken dynamisch Namen zu und ändert die Namen beim Neustart. In diesem Fall kann diese Option nützlich sein.

sudo ddrescue – ask/dev/sda imagefile.img logfile.log

Außerdem gibt es hier noch einige andere Alternativen:

– R – Rückwärts Kehren Sie die Kopierrichtung um
—q – Ganz Alle Ausgabenachrichten abbrechen
– V – ausführlich Im Detail alle Ausgabemeldungen
—p -Vorab zugewiesen Speicherplatz für Ausgabedateien vorab zuweisen
– P -Datenvorschau Die Anzeigezeilen der zuletzt gelesenen Daten sind standardmäßig 3 Zeilen lang

So funktioniert ddrescue

DDREASE verwendet einen leistungsstarken Wiederherstellungsalgorithmus, der in vier Phasen unterteilt ist:

1.Kopieren

2.Beschneiden

3.Rasieren

4. Versuchen Sie es erneut

Die Ausführung des ddrescue-Algorithmus ist in der folgenden Abbildung dargestellt.

Verwenden Sie ddrescue, um Daten unter Linux wiederherzustellen

Fazit

ddrescue ist ein leistungsstarkes Wiederherstellungstool zum Wiederherstellen von Daten von beschädigten oder fehlerhaften Laufwerken durch Kopieren von Daten auf ein anderes Laufwerk. Mit Hilfe des Standardpaketmanagers kann es mühelos auf jeder Linux-Distribution installiert werden. Bitte beachten Sie wichtige Überlegungen, bevor Sie dieses in diesem Handbuch erwähnte Tool verwenden. Der Vorgang zum Kopieren von Daten ist einfach: Hängen Sie das Laufwerk aus und verwenden Sie den Befehl ddrescue mit dem Namen des Quelllaufwerks und dem Namen des Ziellaufwerks. Vergessen Sie nicht, die Protokolldatei zu verwenden, da diese während des Wiederherstellungsprozesses sehr nützlich ist.

Das obige ist der detaillierte Inhalt vonVerwenden Sie ddrescue, um Daten unter Linux wiederherzustellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:mryunwei.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage