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/