Wieder einmal Rekonstruktion hda4: Unterschied zwischen den Versionen
Niki (Diskussion | Beiträge) |
Niki (Diskussion | Beiträge) |
||
Zeile 40: | Zeile 40: | ||
Ich stütze meine Hoffnungen halt darauf, dass ich die Masse von "data" und "DBase_3_data_files" etc getrost löschen kann und file die echten Textdateien brav in "English text", "C-Code", "XML-File" etc einordnet. Dann bekommt man schon viel mehr Überblick. | Ich stütze meine Hoffnungen halt darauf, dass ich die Masse von "data" und "DBase_3_data_files" etc getrost löschen kann und file die echten Textdateien brav in "English text", "C-Code", "XML-File" etc einordnet. Dann bekommt man schon viel mehr Überblick. | ||
+ | |||
+ | = Kommentare = | ||
+ | |||
+ | <comments />{{:{{TALKSPACE}}:{{PAGENAME}}}} | ||
[[Kategorie:Weblog]] | [[Kategorie:Weblog]] |
Aktuelle Version vom 2. Mai 2009, 22:12 Uhr
Beim Rekonstruieren der iSilo Daten hab ich wieder wehmütig auf meine verlorenen Daten (http://www.nobaq.net/old.php) geblickt. Jedesmal, wenn ich mir das Dateiindex anschau, sehe ich Dateien, die ich sehr gerne wieder hätte. Heute habe ich angefangen einen neuen Versuch zu starten...
Ein Versuch, der nicht viel mehr als Brute Force ist.
Ein leite einfach jeden Block durch "file" und ordne sie in ein Verzeichnis. Mit etwas Glück kann ich zumindest kleine Textdateien, die mir noch abgehen einfacher finden. Selbst für etwas größere Dateien stehen die Chancen nicht so schlecht, wenn ich mich recht erinnere stehen 12 Blöcke in der inode.
Dieses Script läuft nun im Hintergrund:
#!/bin/bash
declare -i block=0
declare -i print=0
dest=/mnt/backup/hda4test/dest
while test $block -ne 3664828
do
print=0
test $(( $block % 100 )) -eq 0 && print=1
test $print -eq 1 && echo -n "Inspecting block $block..."
dd if=/mnt/backup/hda4test/hda4.bin of=/tmp/f bs=4096 count=1 skip=$block 2>/dev/null
block=$(( $block +1 ))
type=`file -b /tmp/f`
type=`echo $type | sed -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0-9(),.-]/_/gi;'`
test $print -eq 1 && echo -ne "$type"
mkdir -p "$dest/$type"
cp /tmp/f "$dest/$type/$block"
done
Ist zwar nicht sehr effektiv, aber es tut. Beachtet man, dass es über 3,6 Millionen Blöcke gibt, so läuft das Script alleine noch 2 Tage, viel länger wird es dauern, das ganze auszuwerten. Platz hab ich auf der Backupplatte jedenfalls genug.
Ich stütze meine Hoffnungen halt darauf, dass ich die Masse von "data" und "DBase_3_data_files" etc getrost löschen kann und file die echten Textdateien brav in "English text", "C-Code", "XML-File" etc einordnet. Dann bekommt man schon viel mehr Überblick.
Kommentare
<comments />Diskussion:Wieder einmal Rekonstruktion hda4