NAME¶
myrescue - Festplattenrettungstool
SYNOPSIS¶
myrescue [
-b block-size] [
-B bitmap-file]
[
-A] [
-S] [
-r retry-count] [
-f
skip-failed] [
-s start-block] [
-e
end-block] [
-R] [
-G good-range] [
-F
failed-range] [
-J jump-after-blocks]
input-file
output-file
BESCHREIBUNG¶
myrescue ist kleines Tool, um von beschaedigten Festplatten die noch lesbaren
Daten zu sichern. Es hat eine aehnliche Funktion wie dd_rescue, jedoch
versucht MyRescue zuerst, die unversehrten Daten zu retten, um dann erst die
zerstoerten Bereiche zu bearbeiten.
Das Programm versucht, das Medium Block fuer Block in eine Datei auf einer
anderen(!) Festplatte zu kopieren, wobei eine Tabelle
("Blockbitmap") erstellt wird, in der die erfolgreich gelesenen bzw.
fehlerhaften Bloecke festgehalten werden. Diese Blockbitmap kann dann fuer
weitere Leseversuche wiederverwendet werden.
Zudem besitzt MyRescue einen speziellen Modus, um Lesefehler zu behandeln:
Normalerweise sind bei einem Festplattenschaden viele Bloecke betroffen und
damit defekt bzw. zerstoert. Versuchte man nun, diese Bloecke weiterhin zu
lesen, so leidet die Plattenoberflaeche, die Lesekoepfe und auch die Mechanik
darunter. Die Chancen fuer die Rettung der restlichen unbeschaedigten Bereiche
sinken dramatisch.
Im Skip-Modus versucht MyRescue, so schnell wie moeglich aus dem defekten
Bereich herauszukommen. Die uebersprungenen Bloecke werden in der Blockbitmap
markiert. Hat man nun die noch lesbaren Daten gesichert, kann man dann weitere
Leseversuche starten.
Abschliessend besitzt das Programm eine Option, um mehrfache Leseversuche auf
defekte Bloecke zu starten, bevor sie als Zerstoert eingetragen werden.
HINWEIS¶
DIESES TOOL IST KEIN (!) ERSATZ FUER PROFESSIONELLE DATENRETTUNG DURCH
DARAUF SPEZIALISIERTE FIRMEN
Haben Sie also die Moeglichkeit, eine solche Firma kostenguenstig (da solche
Dienstleistungen sehr kostspielig sind) zu engagieren, dann sollten sie nicht
einmal daran denken, MyRescue einzusetzen, da es zur weiteren Beschaedigung
der Festplatte fuehren kann. MyRescue ist nur fuer ganz Verzweifelte, die sich
eine professionelle Datenrettung auf keinen Fall leisten koennen und fuer
diejenigen, die ganz genau wissen, was sie tun (z.B. bei Alterung der
Magnetbeschichtung usw.)
Man sollte nicht zuviel erwarten. Den Autoren sind zwar schon komplette
Restaurierungen gelungen, aber davon sollte man nicht ausgehen. Sehen Sie die
Daten und Festplatte vorerst als zerstoert an. (Und freuen sich ueber alle
Ueberlebenden, die doch noch auftauchen.)
Es gilt der uebliche GPL-Haftungsausschluss.
INSBESONDERE SEI DARAUF
HINGEWIESEN, DAS DER AUTOR KEINERLEI HAFTUNG FUER MISLUNGENE
RETTUNGSVERSUCHE ODER ZERSTOERTE FESTPLATTEN UEBERNIMMT!
Auch wenn Sie das jetzt vermutlich am wenigsten hoeren wollen: Machen Sie in
Zukunft regelmaessige Datensicherungen, um ein "naechstes Mal" in
Sachen Datenrettung zu vermeiden.
OPTIONS¶
- -b block-size
- Die Groesse der Sektoren (fuer die Fehlererkennung) der
Festplatte. Meistens sind das 4096 Bytes, was zufaellig der Defaultwert
ist.
- -B bitmap-file
- Gibt den Namen der Bitmap-Datei an, die die Status aller
Bloecke beinhaltet. Wenn man die Datei mittels hexdump anschaut, so steht
der Wert 01 fuer korrekt gelesene Sektoren, 00 fuer noch nicht
bearbeitete. Negative Werte geben die Anzahl fehlgeschlagener Leseversuche
an. Gibt man keine Dateinamen an, so wird der Name
output-file.bitmap verwendet.
- -A
- Wenn ein fehlerhafter Block entdeckt wird, wird der
Kopiervorgang abgebrochen.
- -S
- Aktiviert den Skip-Modus: Wenn ein fehlerhafter Block
entdeckt wird, so erhoeht sich die Schrittweite exponentiell, bis wieder
ein lesbarer Block gefunden wird.
- -f skip-failed
- Bloecke ueberspringen, die schon skip-failed mal
nicht gelesen werden konnten. Damit kann vermieden werden, dass der
Lesekopf immer wieder ueber den gleichen Sektor kratzt.
- -r retry-count
- Gibt die Anzahl der Leseversuche an, bis ein Block als
defekt eingetragen wird. Voreinstellung ist 1
- -s start-block
- Die Nummer des Startblocks, bei dem angefangen werden soll.
Voreinstellung ist 0
- -e end-block
- Die Nummer des Endblocks, bis zu dem gelesen werden soll
(wobei dieser nicht eingeschlossen ist). Voreinstellung ist: Groesse von
input-file dividiert durch die block-size.
- -R
- Rueckwaerts lesen, d.h. von end-block (nicht
eingeschlossen) bis start-block
- -G good-range
- Es werden nur Bloecke gelesen, die hoechstens
good-range Bloecke von einem schon erfolgreich gelesenen Block
entfernt liegen.
- -F failed-range
- Erweitert die Wirkung von -f: Es werden auch Bloecke
uebersprungen, die bis zu failed-range Bloecke von einem laut -f zu
ueberspringenden Block entfernt liegen.
- -J jump-after-blocks
- Jeweils nachdem jump-after-blocks Bloecke gelesen
wurden, wird zufaellig zu einem anderen Block gesprungen. Sinnvoll, um
Platten mit verstreuten Defektbereichen zunaechst zu scannen. In diesem
Modus bewirkt -S das Weiterspringen beim ersten Defekt oder beim Antreffen
eines Blocks, der laut -f, -G or -F zu ueberspringen ist.
- -h, -?
- Zeigt die Online-Hilfe an.
EMPFOHLENE VORGEHENSWEISE¶
Bevor man sich die Prozedur der Datenrettung antuen moechte ;-), sollte man
folgendes ueberdenken:
- •
- Der ganze Vorgang ist sehr langwierig (u. Umstaenden
mehrere Stunden oder gar Tage!) und aeusserst nervenaufreibend...
- •
- Man braucht MINDESTENS eine zusaetzliche Festplatte oder
ein genuegend grosses Medium (z.B. Streamer, ZIP-Laufwerk oder
aehnliches). D.h. komplette Mediengroesse (z.B. bei einer 4 GB Partition
eine ebenso grosser freier Speicher auf der Sicherungsfestplatte) plus der
Blockbitmap mit je 1 Byte pro Block.
Nun gut, hat man sich dazu entschieden, so geht man wie folgt vor:
- •
- Bestimmen Sie die Hardware(!)-Blockgroesse ihrer Festplatte
(meistens 4096 Bytes). Dies kann mittels dem Befehl hdparm oder ueber die
Webseiten des Herstellers Ihrer Festplatte geschehen. Wer weiss, wie man
das direkt aus MyRescue hinbekommt, moege es mich wissen lassen.
- •
- Starten Sie einen Durchlauf mit skip-modus und einem
Leseversuch pro Block, um zuerst die noch lesbaren Daten zu sichern.
- •
- Starten Sie einen weiteren Durchlauf ohne skip-modus.
- •
- Wiederholen Sie diesen Vorgang, bis sich die Fehlerzahl
nicht mehr aendert. Man sollte aufgrund der mechanischen Erwaermung der
inneren Festplattenteile zwischen den Durchlaeufen immer ein bis zwei
Stunden warten.
- •
- Wiederholen Sie das ganze mit einer hoeheren Zahl an
Leseversuchen.
- •
- Erstellen Sie schliesslich eine Kopie der geretteten Daten
und fuehren Sie ggfs. den Befehl fsck darauf aus.
- •
- Mounten Sie das Dateisystem (falls in eine Datei kopiert:
mittels loopback). Falls die Verzeichnisstrukturen zerstoert wurden,
finden sich die noch zuzuordnenden Dateifragmente im Verzeichnis
lost+found
Es hilft vielleicht, wenn man waehrend des Lesens von defekten Bloecken der
Festplatte Zeit gibt, sich zu rekalibrieren.
Die Programmierer freuen sich (vor allem wenn alles glatt geht) von Ihnen und
Ihren Erfahrungen hoeren, insbesondere im
Experiences -Forum auf der
Sourceforge Project Seite. Vielen Dank!
BEKANNTE FEHLER¶
Das Handling der
bitmap-file verlaesst sich darauf, dass bei
lseek(2) hinter das Dateiende der Bereich bis dahin mit Nullen
aufgefuellt wird.
Die Blockbitmap laeuft nach 128 Lesefehlern ueber.
AUTOREN¶
Kristof Koehler <kristofk@users.sourceforge.net>, Peter Schlaile
<schlaile@users.sourceforge.net>
UEBERSETZUNG¶
Holger Ohmacht <holger.ohmacht@web.de> Kristof Koehler
<kristofk@users.sourceforge.net>
dd(1),
dd_rescue(no manpage?)
http://www.google.de/search?q=data+recovery
http://myrescue.sourceforge.net/