Disque dur

Récupération de données sur disque défectueux

Outils


J’ai récupéré, il y a peu, un disque dur d’où une bonne partie des données semblaient irrécupérables. Je dis « semblaient » car nous allons voir ici que ce n’était pas tout a fait le cas. Pour récupérer ces données, nous utiliserons l’outil GNU DDRescue.

Récupération des données brutes

Sous Debian, nous utiliserons le paquet gddrescue qui correspond à GNU DDrescue.

# apt-get install gddrescue

Pour information, GNU DDrescue est un outils de récupération de données. Nous allons donc tenter la récupération des données de notre disque dur pour les copier dans un fichier ISO que l’on utilisera par la suite pour récupérer proprement les fichiers désirés. Bien sur il vous faut au moins l’espace de votre disque dur de disponible.

# ddrescue -r 5 -b 512 /dev/sdb target.iso

La commande précédente est exécuté avec les options -b 512 pour spécifier que les données doivent être copiées par block de 512 octets et -r 5 pour demander 5 essais de copie en cas d’erreurs de lecture avant de passer à la suite.

Nous avons donc la copie de notre disque dans un fichier ISO sur un disque qui ne fait plus d’erreur de lecture. C’est déjà un bon point.

Montage de la partition

Le problème est maintenant de monter ce fichier ISO correctement afin qu’il soit utilisable. Dans la commande précédente, nous avons copié le disque entier et pas seulement la partition voulue. Pour monter les partitions de manière indépendantes, il nous faut connaître la table de partition. Pour cela, nous utilisons le logiciel mmls qui permet d’afficher la table de partition d’un volume. Ce programme fait parti du paquet Debian sleuthkit.

# apt-get install sleuthkit

Nous demandons à mmls de nous afficher la table de partition à partir du fichier ISO.

$ mmls target.iso
DOS Partition Table
Offset Sector: 0
Units are in 512-byte sectors
     Slot    Start        End          Length       Description
00:  Meta    0000000000   0000000000   0000000001   Primary Table (#0)
01:  -----   0000000000   0000000062   0000000063   Unallocated
02:  00:00   0000000063   1953520064   1953520002   Win95 FAT32 (0x0C)
03:  -----   1953520065   1953525167   0000005103   Unallocated

La partition qui nous intéresse est la partition FAT32 d’index 02. Selon mmls, elle commence au secteur 63 et chaque secteur fait 512 octets. Le début de la partition se trouve donc à l’octet 63*512=32256.

Nous pouvons donc monter notre partition via l’utilitaire mount en lui spécifiant de commencer au 32256ème octet.

# mount -o loop,offset=32256 target.iso /mnt/target/

Notre partition est montée, il ne vous reste qu’à copier vos données sur un nouveau disque.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.