GNU/Linux >> Tutoriels Linux >  >> Linux

Récupérer des partitions et des fichiers avec TestDisk

Dans Comment prévenir et récupérer d'une suppression accidentelle de fichiers sous Linux, nous avons abordé les sauvegardes locales et distantes, comment réduire votre drame de récupération de fichiers grâce à une gestion intelligente des commandes de suppression de fichiers et les meilleures pratiques générales pour répondre aux urgences de récupération de fichiers. Malheureusement, des accidents se produisent et le matériel tombe en panne. Un outil vers lequel se tourner lorsqu'il est temps de récupérer des fichiers ou des systèmes de fichiers perdus est TestDisk.

Remarque : Si vous n'avez pas de plan de sauvegarde obligatoire, implémentez-en un maintenant. La première fois que vous n'avez pas besoin de recourir à TestDisk, car vous disposez d'une image de sauvegarde, la planification et la préparation sont amorties en termes de temps et de tranquillité d'esprit.

TestDisk tente de récupérer les données de partition perdues et tous les fichiers perdus dans les limites de la partition récupérée. Cet outil peut être en mesure de récupérer vos données par lui-même, ou vous pouvez l'utiliser en conjonction avec Scalpel, un outil d'extraction de fichiers, en utilisant d'abord TestDisk pour obtenir une image disque, puis en analysant l'image pour les types de fichiers avec Scalpel. Vous trouverez plus d'informations sur l'utilisation de Scalpel dans un prochain article.

TestDisk est moins ciblé et plus flexible que Scalpel, donc la façon dont vous utilisez cet outil dépend de la situation. TestDisk est une application interactive, commencez donc par la pointer vers l'appareil ou l'image victime. Par exemple :

$ sudo ./testdisk_static /dev/sdx 
	
Disk /dev/sdx - 1939 MB / 1850 MiB - General UDisk

Please select the partition table type, press Enter when done.
 [Intel  ] Intel/PC partition
>[EFI GPT] EFI GPT partition map (Mac i386, some x86_64...)
 [Humax  ] Humax partition table
 [Mac    ] Apple partition map
 [None   ] Non partitioned media
 [Sun    ] Sun Solaris partition
 [XBox   ] XBox partition
 [Return ] Return to disk selection

TestDisk tente de détecter la carte de partition correcte, mais si vous savez mieux, vous pouvez remplacer sa supposition par un emplacement spécifique. Une fois que vous avez choisi un schéma de partition, TestDisk propose son menu principal. Ici, vous pouvez analyser des fichiers, les récupérer ou modifier la géométrie et les options du disque. Le flux de travail typique consiste à analyser puis à récupérer.

L'exécution de TestDisk sur un exemple de clé USB de laboratoire renvoie cette analyse : 

TestDisk 7.0, Data Recovery Utility, April 2015

Disk /dev/sdb - 1939 MB / 1850 MiB - CHS 1018 60 62
Partition    Start       End    Size in sectors
>D MS Data        2046    3788757    3786712 [wreck]
 D MS Data        75744     84543      8800 [NONAME]

Dans ce cas, la partition perdue s'appelait wreck , et TestDisk a réussi à découvrir ses limites. Si les seules données perdues dont vous récupérez sont la perte d'une carte de partition, alors à ce stade, vous pouvez utiliser ces données pour recréer cette carte à l'aide de GNU Parted.

Une analyse réussie débloque plusieurs nouvelles options dans la section Avancé menu. Armé des limites de la partition, vous pouvez vider les données de cette partition dans un fichier image :

Partition                  Start        End    Size in sectors
> 1 P Unknown                     2048    3788766    3786719
	 
	 
[  Type  ] >[Image Creation]  [  Quit  ]

Vous pouvez ensuite utiliser Scalpel sur l'image pour récupérer des fichiers individuels.

Alternativement, vous pouvez connaître la partition et le type de système de fichiers (Type ), auquel cas vous pouvez dicter la manière dont TestDisk traite les données. Cela peut aider TestDisk à localiser un superbloc de sauvegarde , vous permettant d'utiliser mkfs pour récupérer les données comme ceci :

Disk /dev/sdb - 1939 MB / 1850 MiB - CHS 1018 60 62
Partition                  Start        End    Size in sectors
MS Data                     2048    3788759    3786712 [wreck]
superblock 32768, blocksize=4096 [wreck]
superblock 98304, blocksize=4096 [wreck]
superblock 163840, blocksize=4096 [wreck]
superblock 229376, blocksize=4096 [wreck]
superblock 294912, blocksize=4096 [wreck]

To repair the filesystem using alternate superblock, run
fsck.ext4 -p -b superblock -B blocksize device

Ou, vous pouvez utiliser TestDisk pour détecter les fichiers avec la Liste option de menu :

Partition                  Start        End    Size in sectors
> 1 P EFI System                  2048    3788766    3786719

[Type]  [Superblock] >[  List  ]  [Image Creation]  [  Quit  ]

Utiliser TestDisk est définitivement un voyage. Tant que vous avez préalablement effectué une sauvegarde du lecteur que vous tentez de sauver, cet outil peut généralement être expérimenté en toute sécurité en cas de problème. Cependant, si vous ne faites qu'expérimenter, il est plus sûr de le faire sur une machine de test distincte.

Et s'il vous plaît, faites des expériences. L'expérience que vous gagnerez en pratiquant est inestimable.


Linux
  1. Rechercher des fichiers et des répertoires sous Linux avec la commande find

  2. Comment trouver des fichiers avec des autorisations SUID et SGID sous Linux

  3. Comparer graphiquement des fichiers et des dossiers sous Linux avec Meld

  4. Créer et gérer des partitions sous Linux avec parted

  5. Copier des fichiers avec SCP et Rsync

Créer et gérer des partitions de disque avec Parted sous Linux

Comment créer et gérer des partitions de disque avec Fdisk sous Linux

Synchronisation des fichiers et répertoires Linux avec rsync

Récupérer des fichiers supprimés sur Linux (tutoriel pour débutants)

Comment installer TestDisk sur Linux et récupérer des fichiers supprimés

Comment utiliser Linux pour récupérer des fichiers supprimés