téléchargement pour Windows NT/XP/2000/2003 --> http://www.cgsecurity.org/testdisk-6.4.win.zip
Une version "Ms-Dos" (à mettre sur disquette bootable) est également disponible pour les cas où le démarrage de l’ordi est impossible --> http://www.cgsecurity.org/testdisk-6.4.dos.zip
TestDisk (mais pas forcément la dernière version) est également inclus dans d’autres utilitaires tels Knoppix (http://knoppix-fr.org/download/#knoppix) et Ultimate Boot CD (http://www.infos-du-net.com/telecharger/Ultimate-Boot-CD.html) eux aussi très précieux...
Informations complémentaires --> http://www.cgsecurity.org/
1ère notion à retenir = prudence... Testdisk manipule en effet les partitions, secteurs de boot, MBR, géométrie du disque dur (configuration CHS), et par là même toute erreur peut compliquer voire rendre impossible toute récupération de données ultérieures
2ème notion qui en découle = strictement aucun risque tant qu’on ne fait qu’explorer les partitions et le DD. Le danger vient de la fonction [ Write ] qu’il ne faut utiliser qu’en connaissance de cause (être sûr de ses manips)
3ème notion = logiciel facile d’utilisation : les seules touches à utiliser sont les flèches haut bas droite et gauche, la touche entrée ainsi que certaines touches du clavier (A, P, T, D,...) en fonction des options qui apparaissent à l’écran
4ème point = pour mieux comprendre les explications et explorer vos propres DD, téléchargez testdisk et ouvrez votre propre fenêtre de testdisk . Tout au long du topic les fenêtres de testdisk seront représentées en rouge.
Select a media (use Arrow keys, then press ENTER):
Disk /dev/hdc - 708 MB / 675 MiB
Disk /dev/sda - 120 GB / 111 GiB
Disk /dev/sdb - 120 GB / 111 GiB
[Proceed ] [ Quit ]
Note: Disk capacity must be correctly detected for a successful recovery.
If a disk listed above has incorrect size, check HD jumper settings, BIOS
detection, and install the latest OS patches and disk drivers.
les disques apparaissent sous forme Linux : les disques durs IDE sont /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 commencent habituellement à /dev/hde ou /dev/sda. Les périphériques SCSI et USB commencent toujours à /dev/sda
Ici il y a 2 SATA (et/ou SCSI ou périphérique USB) et un DD IDE de 708 MB configuré en maître sur le port IDE secondaire.
le message en bas d’écran explique que la taille donnée par testdisk pour les DD doit parfaitement correspondre à la taille réelle des DD car dans le cas contraire la récupération ne pourra pas marcher.
Si cette taille diffère (par exemple un DD de 120 Go reconnu comme seulement 32 Go) il faut vérifier les paramètres de détection du DD dans le BIOS ainsi que le cavalier présent sur le DD. Si le disque dur est détecté à seulement 130 Go (alors qu’il en fait 160 ou 200), il faut vérifier qu’on ait bien le SP1 installé (ou SP2) et activer le mode LBA 48 bits dans la BdR .
puis on explore le DD de son choix : par les flèches haut bas mettre en surbrillance le DD que l’on veut explorer, par les flèches droite gauche mettre en surbrillance [Proceed] pour scanner le DD en question, puis valider le choix en appuyant sur la touche Entrée.
Disk /dev/sda - 120 GB / 111 GiB
Please select the partition table type, press ENTER when done..
[ Intel ] Intel/PC partition
[ Mac ] Apple partition map
[ None ] Non partioned media
[ Sun ] Sun Solaris partition
[ XBox ] XBox partition
Note: Do NOT select 'None' for media with only a single partition. It's very rare for a drive to be 'Non-partitioned'.
par les flèches haut bas sélectionner [Intel] (sauf exception) et appuyer sur Entrée : ceci vous amène dans la fenêtre de menu principal de Testdisk où figurent les différentes commandes et options :
Disk /dev/sda - 120 GB / 111 GiB - CHS 14593 255 63
[ Analyse ] Analyse les différentes partitions du DD et cherche des partitions perdues
[ Advanced ] permet de récupérer et réparer les secteurs de boot des partitions
[ Geometry ] modifier la géometrie du disque
[ Options ] modifier les options
[ MBR Code ] écrire le MBR de TestDisk sur le premier secteur du DD
[ Delete ] effacer la table de partition du MBR
[ Quit ] revenir à la sélection de DD
Note: Correct disk geometry is required for a successful recovery. ‘Analyse’ process may give some warnings if it thinks the logical geometry is mismatched.
À noter dans cette fenêtre que Testdisk explore la géométrie du DD (ici 14593 cylindres, 255 têtes et 63 secteurs par piste), et en cas d'anomalie il y aura des messages d’alerte...
Disk /dev/sda - 120 GB / 111 GiB - CHS 14593 255 63
Current partition structure:
Partition...........Start.............End...........Size in sectors
1 * FAT32........0..1..1....1010..254..63....16241652 [NO NAME]
2 P Linux.....1011..0..1....1023..254..63.......208845 [/boot]
3 E ext LBA..1024..0..1..14592..254..63..217985985
5 L Linux.....1024..1..1....3573..254..63....40965687 [md0]
X extended..3574..0..1....4210..254..63....10233405
6 L Linux.....3574..1..1....4210..254..63....10233342 [md1]
X extended..4211..0..1..14592..254..63..166786830
7 L Linux.....4211..1..1...14592..254..63..166786767
*=Primary bootable P=Primary L=Logical E=Extended D=Deleted [Proceed ] [ Save ]
Cette fenêtre affiche les caractéristiques des partitions :
* le nombre de partitions détectées : ici 6 partitions (2 principales et 1 étendue contenant elle-même 3 partitions logiques). A noter qu’il n’y a pas de partition n°4 car dans cet exemple le MBR ne contient que 3 descripteurs de partition (2 principales fat32 et linux et 1 étendue LBA)
* le type de partition : *=partition principale bootable P=partition principale L=partition logique E=partition étendue D=partition supprimée (lorsque testdisk en détecte une)
à noter que ces indications (*, P, L, E) ne sont pas des commandes utilisables, mais seulement un descriptif.
* le type de fichier pour chaque partition (Linux, FAT, étendue…),
* la localisation physique de la partition sur le DD sous forme CHS (début et fin de chaque partition)
* la taille de chaque partition exprimée en nombre de secteurs (1 secteur = 512 octets)
A ce stade TestDisk a vérifié que chaque valeur est dans les limites autorisées, c'est à dire aucune valeur de secteur < 1, ni > au nombre de secteurs par tête. Les entrées de partition sont lues en utilisant le début logique et la taille logique exprimés en secteurs, et TestDisk vérifie que ces valeurs logiques correspondent bien aux informations stockées sous forme CHS. TestDisk vérifie également que la table des partitions ne comporte pas de partition se terminant après la fin du disque, et qu'aucune partition ne se chevauche.
Pour chaque partition, TestDisk lance quelques contrôles de base spécifiques au type de système de fichiers, il contrôle le secteur de boot, la présence du nombre magique (0xAA55) dans le MBR et chacune des partitions étendues. Cette phase est très rapide car les contrôles sont minimaux.
En appuyant sur [Proceed ] TestDisk va ensuite rechercher d’éventuelles partitions « perdues » sans se servir des résultats de l'étape précédente. Pour ce, il recherche notamment les adresses de début de partition possible, la présence d'une en-tête de système de fichiers (FAT, secteur d'initialisation NTFS,...). Si une partition est découverte TestDisk l’ajoute à la liste des partitions existantes :
Disk /dev/sda - 120 GB / 111 GiB - CHS 14593 255 63
Partition.............Start............End............Size in sectors
* FAT32............0..1..1....1010..254..63...16241652 [NO NAME]
P Linux.........1011..0..1....1023..254..63......208845 [/boot]
D Linux.........1024..1..1....3573..254..63...40965687
D Linux RAID..1024..1..1....3573..254..63...40965687 [md0]
D Linux.........3574..1..1....4210..254..63...10233342
D Linux RAID..3574..1..1....4210..254..63...10233342 [md1]
L Linux..........4211..1..1..14592..254..63..166786767
Structure: Ok. Use Up/Down Arrow keys to select partition.
Use LEFT/RIGHT Arrow keys to CHANGE partition characteristics:
*=Primary bootable P=Primary L=Logical E=Extended D=Deleted
Keys A: add partition, L: load backup, T: change type, P: list files,
ENTER: to continue
Là encore « *=Primary bootable P=Primary L=Logical E=Extended D=Deleted » ne sont pas des commandes mais des descriptifs du statut de chaque partition. On peut cependant les modifier (et on doit le faire lorsqu'on trouve des partitions perdues) en se positionnant sur la partition de son choix et en utilisant les flèches droite gauche (« D » permet d’effacer une partition indésirable ou que l’on pense erronée, mais on pourra toujours la récupérer par la suite en relançant testdisk car en réalité ça n’efface que le secteur de boot).
Par contre « Keys A: add partition, L: load backup, T: change type, P: list files » sont des commandes :
- A : permet de créer une nouvelle partition si l’on constate un trou entre les coordonnées CHS de 2 partitions (alternative à la fonction « Search »)
- L : permet de récupérer une éventuelle sauvegarde de secteur de boot (si testdisk n’en trouve pas, cas le plus fréquent, un message nous indique « no backup found, n’utilisez pas la fonction backup et essayez de localiser votre partition »)
- T : permet de changer le type de partition (FAT, NTFS, Linux...) si on pense qu’il y a une erreur pour telle partition
- P : permet de lister les répertoires et fichiers présents sur une partition, et ainsi de confirmer qu’on a récupéré la bonne partition (et de se rassurer quand on voit les données importantes qu’on voulait récupérer) :
* FAT32 0 1 1 1010 254 63 16241652 [NO NAME]
Use right arrow to change directory, q to quit
Directory /
-rwxr-xr-x.....0...0...805306368 20-Jul-2005 10:35 PAGEFILE.SYS
drwxr-xr-x.....0...0..............0 14-Feb-2005 22:41 WINDOWS
-r-xr-xr-x......0...0.........4952 28-Aug-2001 15:00 Bootfont.bin
-r-xr-xr-x......0...0.......251712 3-Aug-2004 22:59 NTLDR
-r-xr-xr-x......0...0.........47564 3-Aug-2004 22:38 NTDETECT.COM
-rwxr-xr-x.....0...0...........212 14-Feb-2005 22:51 BOOT.INI
drwxr-xr-x.....0...0..............0 14-Feb-2005 22:47 Documents
Une fois les modifications (éventuelles) effectuées, on fait « entrée » et on revient à la fenêtre précédente :
Disk /dev/sda - 120 GB / 111 GiB - CHS 14593 255 63
Partition............Start.............End............Size in sectors
1* FAT32..........0..1..1....1010..254..63....16241652 [NO NAME]
2P Linux.......1011..0..1....1023..254..63.......208845 [/boot]
3E ext LBA...1024..0..1...14592..254..63..217985985
5L Linux.......1024..1..1....3573..254..63....40965687 [md0]
6L Linux.......3574..1..1....4210..254..63....10233342 [md1]
7L Linux.......4211..1..1...14592..254..63..166786767
[ Quit ] [Search! ] [ Write ] Return to main menu
- Quit : Quitter le programme de TestDisk sans faire aucun changement (si on a un doute)
- Search! : Le premier balayage rapide peut avoir manquer quelques partitions. Si celle que l’on recherche n’est pas dans la liste, appuyer sur « Search » : ceci va permettre de lancer une nouvelle recherche en utilisant d’autres critères (secteur backup de l'initialisation FAT32, NTFS backup, initialisation superblock,…) et testdisk va relancer une recherche approfondie cylindre par cylindre. Cette étape est plus longue pouvant prendre 20 à 40 minutes selon la taille du DD à explorer. Il est important de bien vérifier le statut de chaque partition quand la recherche est terminée : en effet, si une partition perdue est retrouvée par « Search », elle va apparaitre « D » et il faut, pour la récupérer, utiliser les flèches droite gauche pour mettre le statut correct (principale bootable ou non, logique ou étendue). A noter qu’on ne peut pas faire n’importe quoi et en cas d’erreur on va voir s’afficher le message « structure : bad » qui signifie qu’on a mal configuré le statut d’une des partitions. Si par contre la configuration est correcte on verra « Structure: Ok » en blanc (ce qui signifie que tout est correct, c'est à dire, aucune partition primaire entre deux partitions étendues, une seule (ou aucune) partition amorçable (bootable), aucune partition qui utilise le même espace disque. Puis on appuie sur la touche entrée et on revient à la fenêtre précédente où il faudra confirmer les modifications par la touche « Write ».
- Write : Valide et écrit les changements qui ont été faits (si on est sûr des modifications apportées) : TestDisk demande alors de confirmer : "Write partition table, confirm ? (Y/N)"
- Extd Part : En cas de partition logique, cette option permet de décider si la partition étendue doit employer tout l'espace disque disponible ou seulement l'espace minimum exigé.
A noter qu’en cas de mauvaise manipulation sur la partition système (modifier le statut bootable de la partition, supprimer la partition, supprimer son secteur de boot…), l’ordinateur pourrait ne pas redémarrer avec divers messages d’erreur du genre « hal.dll manquant ou endommagé,… ». Or dans ce cas précis une réparation via la console de récupération n’est pas garantie : d’où l’intérêt d’avoir testdisk version DOS sur disquette bootable pour « réparer » d’éventuelles erreurs via testdisk.
Disk /dev/sda - 120 GB / 111 GiB - CHS 14593 255 63
...Partition...........Start.............End............Size in sectors
1* FAT32............0..1..1....1010..254..63....16241652 [NO NAME]
2P Linux.........1011..0..1....1023..254..63.......208845 [/boot]
3E ext LBA......1024..0..1...14592..254..63..217985985
5L Linux RAID..1024..1..1....3573..254..63....40965687 [md0]
X extended.....3574..0..1....4210..254..63....10233405
6L Linux RAID..3574..1..1....4210..254..63....10233342 [md1]
X extended.....4211..0..1...14592..254..63..166786830
7L Linux.........4211..1..1...14592..254..63..166786767
[ Type ] [ Boot ] [ Quit ] Boot sector recovery
Sélectionnez la partition que vous souhaitez modifier (flèche haut bas) et choisissez la commande à effectuer :
- « Type » permet de modifier le système de fichier (NTFS, FAT 32, Linux,…), exactement comme la commande « T » du menu « analyse »
- « Boot » permet de modifier ou de recréer le secteur de boot de la partition (« boot » n’est accessible que pour les partitions principales et logiques, pas pour les partitions étendues). Lorsqu’on clique dessus, une nouvelle fenêtre s’ouvre :
Disk /dev/sda - 120 GB / 111 GiB - CHS 14593 255 63
Partition............Start..............End..........Size in sectors
1 * FAT32........0..1..1....1010..254..63...16241652 [NO NAME]
Boot sector
OK
Backup boot sector
OK
Sectors are identical.
[ Quit ] [Rebuild BS][ Dump ] [Repair FAT]
Return to Advanced menu
Dans cet exemple le secteur de boot et sa copie de sauvegarde ont tous les deux le statut « OK » et les secteurs sont identiques : il n’y a aucun problème il faut faire « Quit ».
Les options de commandes visibles sur la dernière ligne diffèrent selon la structure du secteur de boot :
- « Org. BS » permet de faire une sauvegarde du secteur de boot lorsque la copie de sauvegarde existante n’est pas bonne (copie du secteur de boot sur le secteur de sauvegarde). Cette commande n’apparaît que si les 2 secteurs sont différents.
- « Backup BS » permet de restaurer le secteur de boot à partir de la copie de sauvegarde lorsque le secteur de boot n’est pas bon (copie de la sauvegarde du secteur de boot sur le secteur de boot). Cette commande n’apparaît que si les 2 secteurs sont différents.
- « Dump » permet d’éditer sous forme hexadécimale le secteur de boot et sa copie de sauvegarde (sauf dans les FAT16 où il n’y a pas de copie de sauvegarde) pour vérifier quels sont les octets qui diffèrent de manière à savoir, en cas d’hésitation, s’il vaut mieux cliquer sur « Org. BS » ou plutôt « Backup BS ». Cette commande apparaît toujours, même lorsqu’il n’y a aucun problème.
- « Rebuild BS » permet de reconstruire le secteur de boot. Cette commande apparaît toujours, même lorsqu’il n’y a aucun problème. La manip diffère selon que la partition soit NTFS ou FAT :
Pour les partitions NTFS, la procédure est automatique (TestDisk essaie de localiser la MFT, évalue sa taille, calcule la taille du cluster, lit la taille de l'Index Allocation Entry dans l'index du répertoire root, et en utilisant toutes ces valeurs, il peut fournir un nouveau secteur de boot) et à la fin de la procédure un secteur de boot "extrapolé" est proposé. Il peut y avoir un message d’alerte du genre « extrapolated boot sector and current boot sector are different » , mais ça ne signifie pas pour autant que le secteur de boot reconstruit ne soit pas valable : on a d’ailleurs la possibilité de vérifier si nos fichiers sont à nouveau accessibles (commande « List ») avant de confirmer et écrire le nouveau secteur de boot (« Write »). Par contre un message du genre « Warning : extrapolated boot sector have incorrect values » n’est pas glop et il vaut mieux reprendre à zéro...
Pour les partition FAT, Testdisk recherche d’abord la Table d’Allocation des Fichiers sur la partition et affiche les fichiers trouvés grâce à cette FAT : si ce sont bien les fichiers qu’on cherchait il faut confirmer par « Y(es) » et testdisk affiche alors le secteur de boot reconstruit à partir de la FAT. Là aussi on peut « lister » les fichiers de la partition avant de confirmer qu’il s’agit du bon secteur de boot avec la commande « write ». Si on est pas sûr que testdisk ait trouvé la bonne FAT (fichiers retrouvés différents de ce qu’on attendait ou carrément absents), il faut taper « N(o) » et testdisk va alors chercher le « cluster root » puis proposer un « extrapolated boot sector ». Là encore attention à l’éventuel message warning... et « lister » les fichiers avant d’écrire ce nouveau secteur (« write »).
- « Repair FAT » répare, dans une partition FAT, la table d’allocation des fichiers (qui pointe vers tous les fichiers et répertoires de la partition). TestDisk compare les deux copies de la FAT. Si les deux FAT ne sont pas identiques ou s'ils contiennent des erreurs, TestDisk utilise la copie de FAT qui a le moins d'erreurs et supprime les erreurs évidentes. Cette commande apparaît toujours (sauf s’il existe une différence entre le secteur de boot et sa copie de sauvegarde), même lorsqu’il n’y a aucun problème. C’est une commande signalée comme « dangereuse » par testdisk (fichiers irrécupérables sur la partition si la FAT est corrompue), mais si on l’utilise quand même et qu’il n’y a aucun problème décelé, Testdisk le signale par le message « FAT seems OK, nothing to do » (la FAT semble OK, il n’y a rien à faire)
- « Repair MFT » répare la table principale des fichiers (Master File Table) dans une partition NTFS (la MFT au sein d’une partition NTFS correspond à la FAT dans une partition FAT). Cette commande apparaît toujours, même lorsqu’il n’y a aucun problème. Là aussi, prudence avec cette commande. Si tout va bien testdisk signale simplement « MFT is OK ».
Disk /dev/sda - 120 GB / 111 GiB - CHS 14593 255 63, sector size=512
Because these numbers change the way that TestDisk looks for partitions
and calculates their sizes, it's important to have the correct disk geometry.
PC partitionning programs often make partitions end on cylinder boundaries.
A partition's CHS values are based on disk translations which make them
different than its physical geometry. The most common CHS head values
are: 255, 240 and sometimes 16.
[ Cylinders ] [ Heads ] [ Sectors ] [Sector Size] [ Ok ]
Done with changing geometry
Si la géométrie du DD ne correspond pas à celle qui a été utilisée lors de la création de la table de partition, on voit apparaître lors de l’analyse un message d’erreur du type : Bad sector count, Bad relative sector or Bad ending head. Dans ce cas il faut essayer de changer le “nombre De têtes” dans “geometry” jusqu’à ce que Testdisk retrouve toutes les partitions, en testant d’abord la valeur de 255 (et à défaut 240, voire 16, 32, 64 ou 128).
TestDisk
1234F:
Appuyer successivement sur les touches 1, 2, 3 et 4 : ceci indiquera au MBR qu’il doit essayer de booter sur n’importe quel secteur de boot qu’il pourra trouver respectivements dans les 1ère, 2ème, 3ème ou 4ème partition.
Si on a la chance d’arriver enfin à booter il faudra ensuite reconstruire le MBR conformément à sa structure initiale (avant que les problèmes ne surviennent) : attention de ne pas se tromper pour ne pas risquer de perdre à nouveau sa table de partition…
Lancer TestDisk > sélectionner le DD à explorer > entrée > sélectionner « intel » > entrée > sélectionner « Analyse » > entrée > « Proceed » > entrée : souvent à ce stade on ne retrouve pas la partition perdue > entrée > « Search » > entrée : dans la nouvelle fenêtre qui apparaitra (après 10 à 20 minutes de scan) il faut vérifier le statut de chaque partition (*, P, L, E, D) et éventuellement modifier par les flèches droite gauche les erreurs visibles (notamment pour les partitions retrouvées qui ont souvent le statut « D ») > entrée > « Write » > entrée > confirmer par « Y ».
Pour chaque partition retrouvée, un message d’alerte peut s’afficher du genre « Partition sector doesn't have the endmark 0xAA55 » ou « Boot sector bad » :
5L FAT32.....383..1..1......3736..254..63.......53881947
Boot sector
test_FAT :
Partition sector doesn't have the endmark 0xAA55
Backup boot sector
OK
First sectors (Boot code and partition information) are not identical.
Second sectors (cluster information) are not identical.
Third sectors (Second part of boot code) are not identical.
il faut alors utiliser la fonction « Backup boot sector » (si la copie de sauvegarde est OK) ou « Rebuild BS » (s’il n’y a pas de copie de sauvegarde valide)...
n'hésitez pas si vous avez des questions (et/ou copies d'écran pour conseils
Remerciement a romsk pour ce travail
Testdisk, testdisk d'urgence..!! edit: et ne touche à rien d'autre!
je viens de télécharger et lancer testdisk
voilà où je me suis arrêté
Fais quick search.
Ouah mes partitions sont là - Comment je fais pour les récuperer ???
tu fais 'Enter'
voila
Avec les petites flèches tu te mets sur Write, tu fais enter et je pense qu'il suffit alors de fermer Testdisk, de redémarrer Windows et c'est bon.
MERCI, CA MARCHE !!!
Voici d'autres pages que vous pouvez consulté :