TestDisk

Testdisk je program pro záchranné a obnovovací práce na pevném disku. Dokáže téměř zázračné operace, kdy jiné obvyklé programy selhávají. Smazali jste omylem svoje data? Došlo vlivem nečekané situace při správě disku k poškození tabulky souborů? Disk „zmizel“ a co nyní s ním? Tento malý prográmek vás zachrání a věřte, opravdu to umí.

Program je k dispozici zdarma (free) podle licence GNU GPL.

  • obnova souborů FAT, FAT32, NTFS, exFAT, ext2, ext3 a ext4
  • obnova oddílů a adresářů ext2, ext3, ext4, FAT, FAT32 a NTFS
  • obnova obrazových souborů, u JPEG včetně EXIF
  • další oddílové tabulky EFI GUID, EFI GPT (Macintosh)
  • pod operačními systémy Dos, Windows9x, WindowsNT4, 2000, XP, Linux, FreeBSD a SunOS.

Nainstalujte program Testdisk. Vyzkoušet jej totiž můžete hned na svém počítači i když jste o data ještě nepřišli.

Ke spuštění se velmi dobře hodí terminál:

sudo testdisk

Možnosti LOGU

  • Vytvořit záznam o činnosti (LOG)
  • Přidávat do existujícího záznamu další záznamy
  • Nevytvářet záznam

Výběr potvrdíte 'Enter' a jdete dál.

Vlastní postup

Ovládání programu je jednoduché, v programu se pohybujete šipkami ↓. Volbu potvrdíte 'Enter' a návrat z každého okna 'q'.

Zde vidíte, jak Testdisk poznal všechny vaše disky. Pokud je v pořádku jejich elektronika, vždy se zobrazí řádka, která je identifikuje. Šipkami vyberte disk, zvolte 'Proceed' pro pokračování zjišťování nebo máte možnost toho včas nechat 'Quit'.

Třetí obrazovka - testdisk bude chtít vědět, s jakým typem oddílů má počítat. Zde zpravidla vyberete 'Intel'.

Upřesnění oddílů

Čtvrtá obrazovka - zde pokračujete nejdůležitější volbou 'Analyse', kde proběhne chvilka ohledání disku a zjištění, jaké tam vlastně mohly být oddíly.

Pátá obrazovka - zde vidíte, jak testdisk odhadl obsah harddisku a vypsal oddíly. V dolní části obrazovky vidíte písmenné symboly jednotlivých druhů oddílů. Pokračujte volbou 'Quick Search' (rychlé hledání).

Nalezené oddíly

Má testdisk hledat oddíl vytvořený v systému Vista? Y = ano, N = ne. Linuxáři samozřejmě dají N. (Malá poznámka. Z vlastní zkušenosti (zrušené oddíly pomoci msmgmt.msc pod Windows XP) vím, že volba Y je nutná pro úspěšné nalezení Linuxových oddílů - u mě / a /home bylo na EXT4).

Chvíli poběží počítadlo sektorů a po krátké prověrce uvidíte nález.

Čeká vás volba k pokračování 'Continue'.

Konečně tu jsou zelené nápisy a to už je skoro vyhráno. Testdisk ukazuje svou představu o oddílech na disku a vy je určitě poznáváte a dolní volbou si vyberete, jak dál. Pro vás bude zde nejdůležitější volba 'P', kterou se bez ohledu na momentální stav oddílů rovnou pustíte na seznam souborů.

Pokud nalezené oddíly odpovídají původnímu rozložení (TestDisk našel ztracený oddíl), a výpis souborů odpovídá, můžete teď volbou Write zapsat změny do tabulky oddílů a tím obnovit ztracený oddíl.

Volbou 'Deeper Search' proběhne ohledání disku na staré a ztracené oddíly, které bývaly na disku před formátováním a jsou dotčeny přepsáním a nepůjdou obnovit. Obnovitelné testdisk označí jako 'Structure OK'.

Zde program uvedl, které oddíly nepůjdou obnovit. Pokračujte 'Continue'….

Zde je příklad, kdy testdisk objevil v dlouhém logickém oddílu stopy starších oddílů a kde se bude z 'sda6' zachraňovat obsah.

Volbou 'P' se ukáže adresář a volbou 'c' se provede kopie souboru na záložní disk. Kopírovat můžete ručně jednotlivé soubory, ale také celé adresáře a disky. Důležité je mít dostatečnou kapacitu na záchranném disku.

Vždy se musí zapisovat na jiný disk, než je zachraňovaný!

Lze tak označit celý adresář nebo oddíl a provést kopírování do místa zálohy.

To může trvat podle velikosti dat klidně i dva dny. 20GB dat se zachraňuje cca noc a den.

Jako přidaný disk pro záznam zachráněných souborů použijte nejlépe externí disk s portem USB, docela dobře vyhoví populární klíčenky (flash disk). Lze i do počítače přidat na vnitřní kabely další disk třeba na přívod k CD mechanice. Rovněž lze vytvářet tzv. obrazy a uložit zálohu obsahu bez ohledu na stav pro případ, že jde o velmi důležitá (ostrá) data a je třeba pojistit případ, že by práce s testdiskem nevyšla.

Pokud je počítač neschopný rozběhu, lze z výhodou použít startovací cd s testdiskem, případně flashdisk. Máte-li již funkční startovací flashdisk pro jiné účely, je možné ho využít pouhým nakopírováním testdisku jako záchranný disk. Testdisk je totiž pouhým jediným souborem a prakticky se neinstaluje. Může tedy být na disketě, na flashdisku, na cdromu, na paměťové kartě.

Pokud jste si omylem vymazali data na disku, můžete je zkusit obnovit. Zásada přitom je, že záchranu dat spouštíme a obnovená data ukládáme vždy na jiný než postižený disk.

Spustíme program

sudo photorec

První tři obrazovky jsou totožné s testdisk - vybereme disk a určíme typ tabulky oddílů.

Pak vybereme postižený oddíl…

Zde je zajímavá možnost File Opt. Pokud vám jde o jeden určitý ztracený soubor, je možné v následující obrazovce zvolit typ souboru (mp3, odt apod.). Prohledávání je pak o něco rychlejší a obnovené soubory ne tak objemné.

Určíme, jestli se má prohledávat jen místo označené jako „volné“ (free), nebo celý oddíl (Whole) - měla by stačit první varianta…

Vybereme druh souborového systému, zřejmě budete mít ext4

Kam chcete obnovená data uložit? Pokud souhlasíte s návrhem (adresář, s kterého jste program spustili), stiskněte y, pokud ne, kurzory vyberte jiný adresář a pak teprve stiskněte y

Závěrečná tabulka obnovených souborů…

Ukázka obnovených souborů. Jména se bohužel nepodaří zachránit, takže vás ještě čeká nějaká ta práce…

Abychom si situaci trochu zjednodušili, tak si vytvoříme skript, který nám data roztřídí podle koncovek do jednotlivých adresářů, jejichž názvem bude koncovka obsažených souborů:

  • vytvoříme si soubor trideni.sh - zde podotýkám, že se musíme nejprve přesunout do adresáře, kde máme obnovená data (jestliže tento skript spustíte kdekoli jinde, bude to mít fatální následky)
touch trideni.sh
  • přidáme patřičná práva
chmod a+x trideni.sh
  • otevřeme skript
gedit trideni.sh
  • vložíme samotné příkazy
#!/bin/bash

koncovka() {
	f=`basename "$1"`
	[ "${f#*.}" == "$f" ] && echo "_bez_koncovky" || echo "${f#*.}" | tr '[:lower:]' '[:upper:]'
}

IFS='
'
new="Obnova_dat_roztrideno"
mkdir "$new"

find . -type f | while read i; do
	k=`koncovka "$i"`
	[ -d "$new/$k" ] || mkdir "$new/$k"
	mv "$i" "$new/$k"
done
  • spustíme skript a očekáváme výsledek
./trideni.sh
  • skript vytvoří ve složce s obnovenými daty novou složku, která se bude jmenovat „Obnova_dat_roztrideno“, kde naleznete všechna data roztříděná dle typu přípony

Po skončení je možno testdisk odinstalovat.

sudo apt-get remove testdisk

Odkazy