#26 Le 25/04/2006, à 17:42
- cep_
Re : [ Résolu ] problème de disque dur: partition vide
Pour fsgrab voir : http://linux.maruhn.com/sec/fsgrab.html
Il y a un tar.gz (au départ pour ext2)
La ligne fsgrab :
fsgrab -c _count_ -s _skip_ _device_
équivalent dd :
dd bs=1k if=_device_ count=_count_ skip=_skip_
-b: BLOCKSIZE is the size of a filesystem block; defaults to 1024
-c: COUNT is count of blocks to read; defaults to 1
-s: SKIP is count of blocks to skip; defaults to 0
-f: write to stdout even if it's a terminal
-h: print a help message
http://linux.maruhn.com/sec/fsgrab.html
http://sid.rstack.org/index.php/R%E9cup%E9ration_de_photos_num%E9riques
#27 Le 05/05/2007, à 21:59
- Vitorio
Re : [ Résolu ] problème de disque dur: partition vide
Bonsoir,
je suis en train d'étudier le système de fichier ext2 en ce moment.
Il est divisé comme ça:
Boot block | Group 0 | Group 1 | ... | Group n
Dans les Group il y a:
Superblock (pas dans tous les groupes) | Group descriptor (pas dans tous les groupes non plus) | inode bitmap | block bitmap | inode table | data blocks
Le superblock et le group descriptor sont répétés (sauvegardés) selon une fonction qui apparemment varie selon ce que j'ai pu googler. Ici ils parlent de répété à tous les groups, autre part, j'arrive pas à retrouver le site, ils parlaient de multiples de x.
Bref, tout ça pour dire que ça fonctionne avec une table d'inodes et un map d'inodes. Le map est simplement un tableau de bits pour indiquer si l'inode est libre ou pas... La même chose pour les data blocks. Si je ne me trompe pas (ce qui est possible), un formatage rapide ne fait que mettre les bitmap à 0 sans toucher aux données. Les cases sont considérées comme libres, mais l'ancien contenu est là...
Donc, théoriquement, il suffit de mettre tout le bitmap des inodes à 1 pour retrouver les fichiers (et plein de bugs avec, car activer les inodes qui n'étaient pas en cours d'usage a un effet imprévisible...). Peut être faut reactiver les datablocks aussi, mais je ne vois pas pourquoi ce serait necessaire pour de la lecture simple. Ça autoriserait à écrire sur un block déjà occupé, mais pour l'instant on ne fait que lire.
Bien sûr, si ça marche, faut sauvegarder tous les fichiers autrepart et reformater avant de réutiliser le disque... Parce que je pense pas que le système de fichier aime la bidouille d'activer toutes les inodes...
Il doit surement avoir un utilitaire qui fait ça, recover par exemple? J'ai jamais eu à récupérer de données, donc j'en sais pas plus que ça niveau programmes.
En espérant avoir aidé,
Cordialement,
Vitorio
#28 Le 05/05/2007, à 22:19
- cep
Re : [ Résolu ] problème de disque dur: partition vide
. . . un formatage rapide ne fait que mettre les bitmap à 0 sans toucher aux données. Les cases sont considérées comme libres, mais l'ancien contenu est là...
Bonsoir,
Oui. Mais dans le cas de ce poste le fs avait été réutilisé, il y avait eu réécriture de données.
Hors ligne