Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 31/03/2009, à 13:52

Aldar_

[Résolu] Récupération de partition perdue

Bonjour, j'ouvre un fil dédié à mon problème, suite à la demande de Rmy, qui fais suite à celui-ci : http://forum.ubuntu-fr.org/viewtopic.ph … 5#p2525675

Problème :
J'ai formaté une partition en ntfs à l'aide de gparted par erreur. La partiton originale possédant les mêmes caractéristiques que la nouvelle, je souhaite la récupérer, ou du moins les fichiers qu'elle contient.
Pour cela je suis les indications de la discusion précedemment citée.

Le disque à récupérer est sdb et la partition sdb1.

Tout d'abord je copie l'intégralité du disque:

$ sudo dd_rhelp /dev/sdb /media/data/recup/disque100.img

Le log ne semble pas indiquer d'erreur :

$ cat /media/data/recup/disque100.img.log 
=== COMPUTED VERSION OF LOG :
chunk:
logcontent:
eof:nothing
=== parsing at 0k, for 0k, max continuous err: 2.5k >>> ===
dd_rescue: (info): ipos:  97685776.0k, opos:  97685776.0k, xferd:  97685776.0k
                   errs:      0, errxfer:         0.0k, succxfer:  97685776.0k
             +curr.rate:    17896kB/s, avg.rate:    16925kB/s, avg.load: 15.6%
dd_rescue: (info): /dev/sdb (97685784.0k): EOF
Summary for /dev/sdb -> /media/data/recup/disque100.img:
dd_rescue: (info): ipos:  97685784.0k, opos:  97685784.0k, xferd:  97685784.0k
                   errs:      0, errxfer:         0.0k, succxfer:  97685784.0k
             +curr.rate:     3489kB/s, avg.rate:    16925kB/s, avg.load: 15.6%
=== COMPUTED VERSION OF LOG :
chunk:0-97685784.0
logcontent:ipos=97685784.0:xferd=97685784.0:NR:errxfer=0.0:succxfer=97685784.0
eof:97685784.0

Comme demandé je fit un :

$ sudo sfdisk -d disque100.img
[sudo] password for simon: 
# table de partitions de disque100.img
unit: sectors

disque100.img1 : start=       63, size= 41945652, Id= 7, bootable
disque100.img2 : start= 41945715, size= 13671315, Id=83
disque100.img3 : start= 55617030, size= 42973875, Id= 5
disque100.img4 : start= 98590905, size= 96775560, Id=83
disque100.img5 : start= 55617093, size=  3903732, Id=82
disque100.img6 : start= 59520888, size= 39070017, Id=83

Le résultat d'un fdisk est cependant moins encourangeant :

$ sudo fdisk -l /media/data/recup/disque100.img
Vous devez initialiser cylindres.
Vous pouvez faire cela depuis le menu des fonctions avancées.

Disque /media/data/recup/disque100.img: 0 Mo, 0 octets
255 têtes, 63 secteurs/piste, 0 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets
Identifiant de disque : 0x411fbc01

                  Périphérique Amorce  Début        Fin      Blocs     Id  Système
/media/data/recup/disque100.img1   *           1        2611    20972826    7  HPFS/NTFS
La partition 1 a des fins physique/logique différentes:
     phys=(1023, 254, 63) logique=(2610, 254, 63)
/media/data/recup/disque100.img2            2612        3462     6835657+  83  Linux
La partition 2 a des débuts physique/logique différents (non Linux?):
     phys=(1023, 254, 63) logique=(2611, 0, 1)
La partition 2 a des fins physique/logique différentes:
     phys=(1023, 254, 63) logique=(3461, 254, 63)
/media/data/recup/disque100.img3            3463        6137    21486937+   5  Etendue
La partition 3 a des débuts physique/logique différents (non Linux?):
     phys=(1023, 254, 63) logique=(3462, 0, 1)
La partition 3 a des fins physique/logique différentes:
     phys=(1023, 254, 63) logique=(6136, 254, 63)
/media/data/recup/disque100.img4            6138       12161    48387780   83  Linux
La partition 4 a des débuts physique/logique différents (non Linux?):
     phys=(1023, 254, 63) logique=(6137, 0, 1)
La partition 4 a des fins physique/logique différentes:
     phys=(1023, 254, 63) logique=(12160, 254, 63)
/media/data/recup/disque100.img5            3463        3705     1951866   82  Linux swap / Solaris
/media/data/recup/disque100.img6            3706        6137    19535008+  83  Linux

Bon je sais pas trop si je peux déjà faire quelquechose là, ou si je passe directement à testdisk.

Bon déjà voilà le résultat des analyses testdisk :
Pour la "quick search" :

Disk disque100.img - 100 GB / 93 GiB - CHS 12162 255 63
Current partition structure:
     Partition                  Start        End    Size in sectors

 1 * HPFS - NTFS              0   1  1  2610 254 63   41945652
 2 P Linux                 2611   0  1  3461 254 63   13671315 [racine]
 3 E extended              3462   0  1  6136 254 63   42973875
 4 P Linux                 6137   0  1 12160 254 63   96775560 [donnees]
 5 L Linux Swap            3462   1  1  3704 254 63    3903732
   X extended              3705   0  1  6136 254 63   39070080
 6 L Linux                 3705   1  1  6136 254 63   39070017

ça correspond à ce qu'il y a sur mon disque, mais la partition ntfs ne contient pas de fichier (mise a part le dossier système volume information), c'est donc la nouvelle et non celle que je tente de récupérer.
Et pour la "deeper search":

Disk disque100.img - 100 GB / 93 GiB - CHS 12162 255 63
     Partition               Start        End    Size in sectors
D HPFS - NTFS              0   1  1  2610 254 63   41945652
D HPFS - NTFS              0  32 33 12161  39 38  195366912
D Linux                 2611   0  1  3461 254 60   13671312 [racine]
D Linux                 2611   1  1  5221 213 34   41943040
D Linux Swap            3462   1  1  3704 254 43    3903712
D Linux                 3705   1  1  6136 254 62   39070016
D Linux                 4896 214 55  7328 213 53   39070016
D Linux                 4897 122 26  7329 121 24   39070016
D Linux                 4901  77 41  7333  76 39   39070016
D Linux                 4904   0  1  7335 253 62   39070016
D Linux                 6137   0  1 12160 254 63   96775560 [donnees]


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
NTFS found using backup sector!, 100 GB / 93 GiB

Une deuxieme NTFS (pas la bonne taille mais bon...), mais quand je liste les fichiers j'obtiens : "Can't open filesystem. Filesystem seems damaged."
Sur la 4eme ligne la partition à presque la bonne taille, mais si je la passe en ntfs et que je liste, même erreur...

Bien, bien, voilà ou j'en suis. Je sais pas trop par où continuer maintenant. Je préférerais avoir quelques avis avant de tenter quoi que ce soit.

Dernière modification par Aldar_ (Le 03/04/2009, à 13:10)

Hors ligne

#2 Le 31/03/2009, à 14:42

fridobox

Re : [Résolu] Récupération de partition perdue

Dans ce post : http://forum.ubuntu-fr.org/viewtopic.php?id=299240
On traite de la récupération des fichiers après formatage.

PS : tu peux également tenter des outils sous windows (en branchant ton disque dans un autre PC)

Dernière modification par fridobox (Le 31/03/2009, à 14:42)


Ubuntero depuis 7.04. Linux registered user number 486328

Hors ligne

#3 Le 31/03/2009, à 16:42

rmy

Re : [Résolu] Récupération de partition perdue

sudo testdisk /media/data/recup/disque100.img

c'est la bonne démarche pour l'instant.

Tu dis que les caractéristiques de ta partition n'ont pas changé, c'est donc

D HPFS - NTFS              0   1  1  2610 254 63   41945652

qui est la bonne, confirmé par "NTFS found using backup sector!" en bas...

L'autre NTFS est probablement d'avant ton formattage avec linux dessus...

Commence par vérifier la "géométrie" de ton image (bizarre le retour de fdisk). Tu devrais avoir C/H/S/T : 12162 255 63 512

Ensuite selectionne te partition citée ci dessus après le deeper search et passe là en primary bootable ("*").
"write" puis reboot.
re-testdisk, menu option -> expert, puis menu advanced, tu selectionnbe la partition en question et tu vois ce que te dis le "boot". Essaye à ce stade la reparation du BS et/ou de la MFT si il annonce toujours être endommagé. Si tu arrives à un stade ou "List" te donne quelque chose, c'est good. Je reviens tard ce soir et je passerai t'expliquer le mapping de partition au sein de ton image disque pour pouvoir la monter. Sinon, il faudra essayer avec ntfsfix eventuellement, et ensuite avec photorec pour de la récup "brute". Enfin c'est vrai que pour un cas comme ça il peut être utile d'(avoir un windowsd sous la main pour essayer avec des outils propriétaires sur ntfs... mais le problème c'est qu'il ne fonctionnent pas sur des images disques et qu'il faut y aller à tatons sous peine de faire des conneries irreversibles et d'aggraver la situation. A moins d'avoir un disque avec une géométrie identique et de faire une image disque complète puis de tester... ou alors de pas avoir peur du tout de faire une connerie et de faire une image disque comme celle que tu as fait, de ne pas y toucher, de travailler sur le disque avec windows, puis en cas d'échec de recopier l'image sur le disque et de recommencer...

Bon courage, je file au boulot-bis et je repasse vers 23H

Hors ligne

#4 Le 01/04/2009, à 18:31

Aldar_

Re : [Résolu] Récupération de partition perdue

@fridobox: Merci, avec GetDataBack je visualise bien toutes mes données mais bon elles ne méritent pas de payer une licence...

@Rmy:
Bon en fait le "NTFS found using backup sector!", c'était pour la seconde partition ntfs pas la première.
Enfin bon j'ai suivi tes conseils. Dans le BS j'ai du rechercher en profondeur la mft mais finalement j'arrive à lister tous mes anciens fichiers !
Je n'ai donc plus qu'une question : comment monter simplement l'image pour récupérer les données qui m'intéressent ? Je ne désire pas récupérer la totalité de la partition.
Merci pour ton aise wink

Hors ligne

#5 Le 01/04/2009, à 18:47

rmy

Re : [Résolu] Récupération de partition perdue

Quand tu "arrives à lister", écris ce BS et cette MFT sur ton image avec testdisk.
deux solutions ensuite : testdisk avec "c" te permet de copier tes données, c'est fastidieux et pas très user-friendly. Je te conseille plutot de t'inspirer de cet autre post ou j'explique à un "copain de données perdues" comment mapper la partition à partir de l'image disque.

Si tu t'en sors pas, crie, pas trop fort, je couche le bébé et j'arrive.

PS il faut que tu adaptes les chiffres du fichier "map" avec tes tailles de partition à toi...

sudo sfdisk -d tonimage.img

de rigueur après l'écriture des modifs du BS&MBR pour vérifier...

Hors ligne

#6 Le 02/04/2009, à 14:56

Aldar_

Re : [Résolu] Récupération de partition perdue

Bon, j'ai finalement opté pour la solution de copie depuis testdisk. Tout mes fichiers sont enfin là smile

Pour information, avec le mapping j'ai monté une partition vide. Je te mets le détail de ce que j'ai fais, je me suis probablement trompé quelque part :

$ sudo sfdisk -d disque100.img
 table de partitions de disque100.img
unit: sectors

disque100.img1 : start=       63, size= 41945652, Id= 7, bootable
disque100.img2 : start= 41945715, size= 13671315, Id=83
disque100.img3 : start= 55617030, size= 42973875, Id= f
disque100.img4 : start= 98590905, size= 96775560, Id=83
disque100.img5 : start= 55617093, size=  3903732, Id=82
disque100.img6 : start= 59520888, size= 39070017, Id=83

$ echo "0 41945652 linear /dev/loop1 63"> map
$ sudo losetup /dev/loop1 disque100.img
$ sudo dmsetup create virtualrecup map
$ sudo mkdir /mnt/recup
$ sudo mount /dev/mapper/virtualrecup /mnt/recup

si je me rends sur /mnt/recup/ je vois un dossier vide avec presque 20Go d'espace libre.
Cependant :

$ sudo ls -l /mnt/recup/
ls: ne peut accéder recup/AUTOEXEC.BAT: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/boot.ini: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/Bootfont.bin: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/Config.Msi: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/CONFIG.SYS: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/Documents and Settings: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/Intel: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/IO.SYS: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/MATLAB6p5: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/MSDOS.SYS: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/NTDETECT.COM: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/ntldr: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/NVIDIA: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/pagefile.sys: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/Program Files: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/RECYCLER: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/System Volume Information: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/Utilitaires: Aucun fichier ou dossier de ce type
ls: ne peut accéder recup/WINDOWS: Aucun fichier ou dossier de ce type
total 0
-????????? ? ? ? ?                ? AUTOEXEC.BAT
?????????? ? ? ? ?                ? Bootfont.bin
?????????? ? ? ? ?                ? boot.ini
d????????? ? ? ? ?                ? Config.Msi
-????????? ? ? ? ?                ? CONFIG.SYS
d????????? ? ? ? ?                ? Documents and Settings
d????????? ? ? ? ?                ? Intel
?????????? ? ? ? ?                ? IO.SYS
d????????? ? ? ? ?                ? MATLAB6p5
?????????? ? ? ? ?                ? MSDOS.SYS
?????????? ? ? ? ?                ? NTDETECT.COM
?????????? ? ? ? ?                ? ntldr
d????????? ? ? ? ?                ? NVIDIA
?????????? ? ? ? ?                ? pagefile.sys
d????????? ? ? ? ?                ? Program Files
d????????? ? ? ? ?                ? RECYCLER
d????????? ? ? ? ?                ? System Volume Information
d????????? ? ? ? ?                ? Utilitaires
d????????? ? ? ? ?                ? WINDOWS

Bon ceux sont des détails puisque j'ai déjà récupéré mes données, mais bon, c'est histoire de comprendre un peu comment les choses fonctionnent.
Au fait, le périphérique virtuel créé est temporaire ou je dois le détruire à la main?

Hors ligne

#7 Le 03/04/2009, à 06:53

rmy

Re : [Résolu] Récupération de partition perdue

bah... Là je ne sais pas hmm ça aurait du fonctionner avec ce que tu as fait.

Pour le periphérique virtuel je crois qu'il disparait au prochain démarrage  de l'ordi, mais sinon tu peux l'enlever manuellement...

dmsetup remove /dev/mapper/virtualrecup

Hors ligne

#8 Le 03/04/2009, à 15:00

Aldar_

Re : [Résolu] Récupération de partition perdue

Bon c'est pas grave. Le périphérique était déjà supprimé au redémarrage !
Merci pour l'aide, ça te fais un cas d'école pour ton sujet de récupération smile

sujet résolu.

Hors ligne