En fait, il y en a. Hélas, je crains qu'ils souffrent du même problème que la technique de modification manuelle des inodes : les blocs indirects sont irrécupérables. Cependant, selon la probabilité que cela ne soit plus un problème d'ici peu, ça vaut sûrement le coup de chercher ces programmes maintenant.
J'ai écrit un utilitaire nommé e2recover
, qui est essentiellement un
enrobage Perl à fsgrab
. Il fait un effort raisonnable pour gérer les
blocs indirects effacés, et semble très bien fonctionner en l'absence de
fragmentation. Il en profite pour remettre les permissions (et, quand c'est
possible, le propriétaire) des fichiers récupérés, et s'assure même que les
fichiers récupérés soient à la bonne taille.
J'ai initialement écrit e2recover
pour la toute proche mise à jour de ce
Howto ; malheureusement cela signifie que tous les renseignements utiles
sur e2recover
sont aussi prévus pour cette mise à jour. En attendant, il
devrait s'avérer quand même utile dès maintenant ; vous pouvez le télécharger
depuis
ma page, et
prochainement sur Metalab.
Scott D. Heavner est l'auteur de lde
, (`Linux Disk Editor'). lde
peut
servir aussi bien d'éditeur binaire de disque, que d'un équivalent de
debugfs
pour les systèmes ext2 et minix, et même pour les systèmes xia
(bien que le support xia ne soit plus disponible dans les noyaux 2.1.x et
2.2.x). Il dispose de fonctionnalités pour faciliter la récupération, comme
le parcours de la liste des blocs, et la recherche dans le contenu du disque.
Il possède également une documentation sur
les concepts de base des systèmes de fichiers particulièrement utile,
ainsi qu'un document expliquant comment l'utiliser afin de
récupérer des fichiers supprimés.
La version 2.4 de lde
est disponible sur
Metalab et ses mirroirs, et sur
la page de son auteur.
Une autre possibilité est fournie par le GNU
Midnight Commander, mc
. C'est un gestionnaire de fichiers
en plein écran, inspiré autant que je le sache d'un certain
programme MS-DOS couramment désigné sous le nom de « nc ».
mc
supporte la souris dans la console Linux et dans un xterm,
et fournit des systèmes de fichiers virtuels qui permettent des
trucs du genre de se déplacer dans une archive Tar. Parmi ses
systèmes de fichiers virtuels, il en est un concernant la
récupération sous Ext2. Tout ça semble très commode à manipuler,
mais je dois avouer que que je ne l'ai jamais utilisé moi-même
-- je préfère les bonnes vieilles commandes shell.
Apparemment il faut configurer le programme avec l'option
--with-ext2undel
; vous aurez également besoin des
bibliothèques de développement et des fichiers d'en-tête
(include) qui viennent avec le paquetage e2fsprogs
.
La version fournie par
Debian GNU/Linux est ainsi compilé ; c'est peut-être le cas pour
d'autres distributions. Une fois que le programme est compilé, vous
pouvez y taper cd undel:/dev/hda5/
, et obtenir, sous forme
de contenu de répertoire, le catalogue des fichiers supprimés.
Comme la plupart des outils actuels de récupération, il gère très mal les blocs
indirects effacés -- la plupart du temps il ne récupère que les 12 premiers
Ko des gros fichiers.
La dernière version peut être récupérée depuis le site ftp officiel.