Již před delší dobou si kamarád omylem místo jedné smazal fotky během dovolené. Bohužel si pak řekl, že jsou ztracené a ještě něco na kartu fotil. Tím pádem na kartě přepsal veškeré zbývající informace v adresářích a FAT. Protože se na foťácích vetšinou smažou veškeré soubory a pak se začne fotit znova, usoudil jsem, že většina souborů bude uložena lineárně v blocích za sebou. Napsal jsem si prográmek, který po sektorech hledá signaturu JPEG formátu a pokud jí najde, tak uloží následujících EXTR_SIZE bytů do samostatného souboru. Pak pokračuje v hledání signatury za tím blokem, kde jí našel minule. Podařilo se mi tak velké množství fotek zachránit. Velikost EXTR_SIZE musí s rezervou pokrýt i maximální velikost fotky pro dané nastavení použitých režimů/rozlišení foťáku. Výsledkem je, že soubory obsahují na konci různě velké množství nevyužitého místa. Toho se ale lze zbavit překopírováním obrázku beze změny některou utilitou pro beztrátové operace nad JPEGem. Zdrojový kód jednoúčelového vyhledávání fotek v image disku je zde.
http://cmp.felk.cvut.cz/~pisa/linux/extractjpg.cPro konkrétní použití ho bude nejspíš potřeba upravit.
Jinak nástrojů na záchranu dat z poškozeného FAT filesystému je velké množství, ale tenkrát se mi rychle najít něco vyhovujícího nepovedlo, tak jsem skončil u tohoto možná příliš primitivního řešení.