L’erreur est humaine et effacer des données par inadvertance nous est tous arrivés. Mais d’autres raisons peuvent amener à vouloir récupérer ses données : Les virus, sur linux cela est plus rare, mais pas impossible comme certains l’affirment, les actes de malveillance et les défaillances matérielles.

La récupération de données est une tâche difficile, car les systèmes d’exploitation sont d’abord conçus afin d’utiliser les ressources efficacement pour assurer de bonnes performances. De plus, il faut éviter d’écrire à nouveau sur le disque dur ou la partition !

En effet quand vous effacez un fichier, les données ne sont pas tout de suite réécrites. L’indicateur (inode) du fichier dans le système de fichiers est simplement rendu disponible. Donc plus le disque est utilisé après que le fichier soit effacé, plus petite est la probabilité de retrouver vos fichiers.

Copie du filesystem depuis un distribution live

Il faut booter sur un cd en utilisant par exemple cette mini distribution qui possède déjà les packages nécessaires aux manipulations suivantes. Par exemple ubuntu remix disponible ici.

Le fichier iso pour graver un CD de la version 9.10 est disponible à cette adresse : ubuntu-rescue-remix-9.10.iso. ette image est compatible avec l’outil de création de disque de démarrage USB disponible dans ubuntu. Pour cela allez dans le menu Système -> Administration -> Créateur de disque de démarrage USB

Identification du filesystem à réparer

comme précédemment nous utiliserons la commande suivante :

sudo fdisk -l

Rappel:  L’identification des disques durs et des partitions sous linux. Les disques durs IDE sont nommés de la façon suivante /dev/hda (IDE 1 maître), /dev/hdb (IDE 1 esclave), /dev/hdc (IDE 2 maître), ou /dev/hdd (IDE 2 esclave). Les disques durs SATA sont nommés habituellement /dev/sd[lettre]. Les périphériques SCSI et USB commencent toujours à /dev/sda.
Au sein de ces disques, chaque partition est représentée par un numéro venant après les 3 lettres : hdb3 désigne par exemple la 3ème partition du disque hdb, sda2 la 2ème partition d’un DD sata ou d’un DD externe branché en USB, etc… les chiffres de 1 à 4 représentent des partitions principales, les partitions logiques étant numérotées à partir de 5…

restauration des données

Deux cas se présentent :

Le disque n’est pas défectueux :

Nous utiliserons ici la commande dd :

sudo dd if=/dev/hda of=recover.dd
  • if: données en entrée
  • of: données en sortie

Le disque est défectueux

gddrescue copie les données d’un périphérique de bloc (disque dur, CD-ROM, etc) vers un fichier, s’efforce de sauver des données même en cas d’erreurs de lecture.

Installation

sudo apt-get install gddrescue

Utilisation

sudo ddrescue -n /dev/sda ~/image.dd fichier.log

Dans le cas ou vous avez arrête l’opération le fait d’utiliser un fichier de log vous permettra de reprendre l’opération là où elle s’est arrêté.

Puis il faut monter l’image pour voir ce qui a été récupéré et copier les fichiers ailleurs:

mkdir -p /mnt/test;sudo mount -o loop /var/tmp/image.dd /mnt/test

Une fois les fichiers copiers vous pouvez démonter le filesystem :

sudo umount /dev/test/

Avec cette commande on peut également tenter de récupérer un DVD défectueux.

sudo ddrescue -n -b2048 /dev/[device] video.iso video_ddrescue.log

Récupération de fichiers effacés :

Nous avons à notre disposition divers outils:

Formost :

formost est un utilitaire de ligne de commande pour trouver et récupérer les fichiers basés sur leur extension. Il a été développé pour le service des enquêtes spéciales de l’US Air Force.

Installation

sudo apt-get install foremost

Utilisation

  1. Rapport affiché seulement à l’écran
    sudo foremost -av recover.dd
  2. Récupération de fichier par extension
    sudo foremost -t jpg,pdf -i recover.d

Les fichiers seront déposés dans le répertoire output

MagicRescue

Installation

sudo apt-get install magicrescue

Utilisation

Il peut être utiliser pour récupérer des fichiers : avi, mp3, gimp-xcf, jpeg, png, doc, odt, etc.

Pour chaque type de fichier il existe le « mode d’action » (recipe) dans le répertoire /usr/share/magicrescue/recipes: avi, elf, gimp-xcf, gzip, jpeg-jfif, mp3-id3v2, perl, zip, canon-cr2, flac, gpl, jpeg-exif, mp3-id3v1, msoffice, png.

magicrescue -d ~/output -r /usr/share/magicrescue/recipes/jpeg-jfif image.dd

Il existe d’autres utilitaires qui feront l’objet d’un autre article…. testdisk, sleuhkit

Laissez moi vos expériences dans les commentaires !