fsck, file retrieve - VYŘEŠENO

Oak oak.brno na seznam.cz
Úterý Srpen 5 14:57:01 CEST 2003


Dobrý den,

tak jsem to nakonec v principu zvládl, zatím jsem vyjmul první a poslední 
fotku. Teď si moc nevím rady jak to zautomatizovat, ale to už do tohoto 
threadu nepatří. Udělám tedy menší SOUHRN pro budoucí generace :-).

Problém: Záchrana dat z média s poškozeným fs

Řešení:

1) Surová kopie (médium na /dev/sda1) do image souboru:
  # dd /dev/sda1 pracovni.img
Vytváření image neskončilo, musel jsem to po detekci nečinnosti killnout, 
ale všechna potřebná data byla přenesena.

2) Pokus o opravu filesystému:
  # fsck.vfat pracovni.img
U mě selhalo, nejspíš příliš poškozený fs (hlásil něco o 255 kopiích FAT 
:-). Pokračuji pokusem vyjmout data, předpoklad dobré fragmentace dat.

3) Otevření starší dobré fotky ze stejnýho foťáku kterým byla zapsána data v 
hexadecimálním editoru KHexEdit a poznačení začátku souboru (jak ASCII 
kódu, tak šestnáctkovýho).

4) Vyhledávání poznačeného řetězce v souboru "pracovni.img" v KHexEdit. 
Zjistil jsem, že všechny fotky začínají na "d8 ff e1" (šestnáctkově).

5) Vyselektoval jsem oblast souboru "pracovni.img" od prvního nalezeného 
řetězce "d8 ff e1" včetně až do dalšího výskytu. Nechal jsem to uložit jako 
nový soubor "extr.jpeg" a HEURÉKA! Fotka je na světě.

6) Fotku "extr.jpeg", která měla 400 KB, jsem otevřel v Gimpu a duplikoval 
(Gimp naštěstí duplikuje zpracovaný obraz, ne zdrojový soubor) a uložil 
jako nový soubor. Fotka se zmenšila ze 400,0 KB na 218,8 KB, což asi není 
pro fotku v rozlišení 1600x1200 mimořádný. Lze předpokládat, že zmizel i 
různý binární odpad.

Teď už mě trápí jen to zautomatizování procesu extrakce z image souboru 
(fotek je cca 150!). Zkusil jsem napsat i malý prográmek, ale nezadařilo 
se. Viz. nový thread "Dělení binárního souboru - skriptem nebo programem".

Díky za všechny rady, zdraví

Oak


Dne po 4. srpna 2003 01:11 jste napsal(a):
> Proc? Je to snadne (najit retezec, kterym zacina JPEG + vzit nejaky horni
> odhad velikosti tech souboru). Pak to jen otevrit v nejakem editoru a
> ulozit, aby se odstranil bordel na konci.
>
> Pokud to neni fragmentovane (jako ze podle vasich slov neni), tak bude
> mit tato metoda vysokou uspesnost (zalezi taky na charakteru toho
> poskozeni, kvuli kteremu celou tu zachranu delate).
>
> -- Honza Houstek




Další informace o konferenci Linux