"Write error" lors de la récupération d'une partition NTFS

Comment utiliser TestDisk pour récupérer une partition perdue
Message
Author
paamutbambaki
Posts: 12
Joined: 30 Aug 2013, 13:05

"Write error" lors de la récupération d'une partition NTFS

#1 Post by paamutbambaki »

Bonjour,

Je disposais d'un disque dur portable d'1To (LaCie Rikiki). L'ayant laissé branché à un lecteur DVD pendant trop longtemps (environ 2 semaines) et une mauvaise ventilation, celui-ci a fini par émettre une odeur de brulé et ne plus être reconnu par mes appareils.

Je l'ai donc ouvert pour en extraire le disque qui se trouvait à l'intérieur, que j'ai rebranché sur mon laptop grâce à un adaptateur externe. Comme je l'imaginais, le disque est encore plus ou moins en bon état. gparted me le liste, mais ne reconnait pas les partitions qui sont dessus.

Quelques informations avant d'en venir à mes opérations avec TestDisk. Je suis sous Ubuntu, et mon disque dur possèdait deux partitions. La première, nommée "piggy", d'une dizaine de Go, en FAT32. Et la seconde, nommée "rikiki", du reste de l'espace (soit environ 990Go), en NTFS.

Après un Quick Search, TestDisk trouve la partition "rikiki" et me permet de browser mes fichiers sans problèmes. Après un Deep Search (qui prends quelques heures), il revient avec trois partitions, dont voici l'output :

Code: Select all

Disk /dev/sdb - 1000 GB / 931 GiB - CHS 15201 255 63
     Partition               Start        End    Size in sectors
D HPFS - NTFS            163  49 15 15200  30 62  241568256 [rikiki]
D HPFS - NTFS            163  49 15 15200  30 63  241568256
D HPFS - NTFS          15036 253  2 15200  39  8    2621184
Je peux browser la partition "rikiki" à nouveau sans problèmes. Impossible d'accèder aux deux autres par contre.
J'ai passé "rikiki" en Logical et tenté un Write, mais n'ai eu qu'un "Write Error" en réponse.

La seconde partition (aux valeurs proches de "rikiki") semble être une erreur, et je n'en tiens pas compte. La troisième partition par contre m'intrigue. Ce ne peut pas être "piggy" car celle-ci se trouvait au début du disque (d'après mes souvenirs) et surtout était en FAT32. Peut-être la dernière partition n'est-elle que de l'espace non-attribué ?

Comment pourrais-je faire pour récupérer ma partition "rikiki" ? Je me moque de ce qui se trouve sur la FAT32 "piggy". A noter que je n'ai consciemment pas lancé de chdsk ou autres utilitaires de récupération de peur d'aggraver le problème, TestDisk est le premier et le seul que j'ai utilisé pour le moment.

Ah si, j'ai lancé badblocks, pour vérifier si l'intégrité physique du disque était encore assurée, et il ne m'a sorti aucune erreur.

L'output de fdisk est le suivant :

Code: Select all

sudo fdisk -l /dev/sdb
Note: sector size is 4096 (not 512)

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 15200 cylinders, total 244190646 sectors
Units = sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x312dfe8d

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *     2621696   244189951   966273024    7  HPFS/NTFS/exFAT
Cette indication de sector size 4096/512 m'interpelle. Je ne comprends pas réellement ce que cela signifie, mais peut-être est-ce que cela à un rapport avec mon problème ?

Merci à quiconque aurait des pistes pour récupérer ma partition.

-- Tim

User avatar
cgrenier
Site Admin
Posts: 5432
Joined: 18 Feb 2012, 15:08
Location: Le Perreux Sur Marne, France
Contact:

Re: "Write error" lors de la récupération d'une partition NT

#2 Post by cgrenier »

Peux tu utiliser TestDisk 6.14 et après le Quick Search, choisir Write, confirmer, Quit ?
Si cela ne fonctionne pas, poste le message d'erreur visible dans le fichier testdisk.log

paamutbambaki
Posts: 12
Joined: 30 Aug 2013, 13:05

Re: "Write error" lors de la récupération d'une partition NT

#3 Post by paamutbambaki »

J'installe la 6.14 et je teste ça. Merci.

paamutbambaki
Posts: 12
Joined: 30 Aug 2013, 13:05

Re: "Write error" lors de la récupération d'une partition NT

#4 Post by paamutbambaki »

Toujours un "Write Error" après le Quick Search => Write. N'étant pas certain de quelles parties du log sont importantes, je le poste dans la totalité (68 lignes) :

Code: Select all

Thu Sep  5 16:44:43 2013
Command line: TestDisk

TestDisk 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org
OS: Linux, kernel 3.0.0-32-generic (#51-Ubuntu SMP Thu Mar 21 15:51:26 UTC 2013) i686
Compiler: GCC 4.4
Compilation date: 2013-07-30T14:11:17
ext2fs lib: 1.41.12, ntfs lib: libntfs-3g, reiserfs lib: 0.3.1-rc8, ewf lib: 20120504
/dev/sda: LBA, HPA, LBA48, DCO support
/dev/sda: size       312581808 sectors
/dev/sda: user_max   312581808 sectors
/dev/sda: native_max 312581808 sectors
/dev/sda: dco        312581808 sectors
Warning: can't get size for Disk /dev/mapper/control - 0 B - 1 sectors, sector size=512
Hard disk list
Disk /dev/sda - 160 GB / 149 GiB - CHS 19457 255 63, sector size=512 - SAMSUNG HM160HI, S/N:S1WWJ9AZ251165, FW:HH100-06
Disk /dev/sdb - 1000 GB / 931 GiB - CHS 15200 255 63, sector size=4096 - SAMSUNG HM100UI
Disk /dev/mapper/cryptswap1 - 4039 MB / 3852 MiB - 7888896 sectors, sector size=512
Disk /dev/dm-0 - 4039 MB / 3852 MiB - 7888896 sectors, sector size=512

Partition table type (auto): Intel
Disk /dev/sdb - 1000 GB / 931 GiB - SAMSUNG HM100UI
Partition table type: Intel

Analyse Disk /dev/sdb - 1000 GB / 931 GiB - CHS 15200 255 63
Geometry from i386 MBR: head=255 sector=63
NTFS at 163/49/15
Warning: number of bytes per sector mismatches 512 (NTFS) != 4096 (HD)
Info: size boot_sector 1932546048, partition 241568256
Current partition structure:
 1 E extended LBA           163  49  1 15200 254 63  241582383
No partition is bootable
Warning: number of bytes per sector mismatches 512 (NTFS) != 4096 (HD)
 5 L HPFS - NTFS            163  49 15 15200  30 62  241568256 [rikiki]

search_part()
Disk /dev/sdb - 1000 GB / 931 GiB - CHS 15200 255 63
check_FAT: number of bytes per sector mismatches 512 (FAT) != 4096 (HD)

block_group_nr 1

recover_EXT2: "e2fsck -b 32768 -B 4096 device" may be needed
recover_EXT2: s_block_group_nr=1/7292, s_mnt_count=0/4294967295, s_blocks_per_group=32768, s_inodes_per_group=8192
recover_EXT2: s_blocksize=4096
recover_EXT2: s_blocks_count 238947328
recover_EXT2: part_size 238947328
     Linux                    0   4  5 14873 203 50  238947328 [rikiki]
     ext4 blocksize=4096 Large file Sparse superblock Backup superblock, 978 GB / 911 GiB

Results
   * Linux                    0   4  5 14873 203 50  238947328 [rikiki]
     ext4 blocksize=4096 Large file Sparse superblock Backup superblock, 978 GB / 911 GiB

interface_write()
 1 * Linux                    0   4  5 14873 203 50  238947328 [rikiki]
write!

write_mbr_i386: starting...
write_all_log_i386: starting...
No extended partition

Partition: Write error

TestDisk exited normally.
Je n'ai pas essayé le Deeper Search, mais comme cela peut prendre de longues heures, je préfère attendre d'autres instructions.

User avatar
cgrenier
Site Admin
Posts: 5432
Joined: 18 Feb 2012, 15:08
Location: Le Perreux Sur Marne, France
Contact:

Re: "Write error" lors de la récupération d'une partition NT

#5 Post by cgrenier »

Peux-tu essayer avec TestDisk 7.0-WIP ?

paamutbambaki
Posts: 12
Joined: 30 Aug 2013, 13:05

Re: "Write error" lors de la récupération d'une partition NT

#6 Post by paamutbambaki »

J'essaie ça demain dans l'après-midi.

paamutbambaki
Posts: 12
Joined: 30 Aug 2013, 13:05

Re: "Write error" lors de la récupération d'une partition NT

#7 Post by paamutbambaki »

Avec la 7.0 WIP, je n'ai plus de Write Error, Test Disk m'indique que je dois rebooter pour que les changements soient pris en compte. Après un reboot, lorsque je branche le disque, Ubuntu m'affiche un message d'erreur :

Code: Select all

Unable to mount piggy
Error mounting: mount: /dev/sdb1: can't read superblock
Pour rappel, piggy est la partition en FAT32 qui se trouve au début du disque, d'une dizaine de Go. Ce n'est pas la partition principale (rikiki) qui contient mes données.

Ci-dessous, le log de la 7.0 WIP :

Code: Select all

Thu Sep 12 16:00:59 2013
Command line: TestDisk

TestDisk 7.0-WIP, Data Recovery Utility, August 2013
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org
OS: Linux, kernel 3.0.0-32-generic (#51-Ubuntu SMP Thu Mar 21 15:51:26 UTC 2013) i686
Compiler: GCC 4.4
Compilation date: 2013-09-11T08:28:34
ext2fs lib: 1.42.8, ntfs lib: libntfs-3g, reiserfs lib: 0.3.1-rc8, ewf lib: 20120504
/dev/sda: LBA, HPA, LBA48, DCO support
/dev/sda: size       312581808 sectors
/dev/sda: user_max   312581808 sectors
/dev/sda: native_max 312581808 sectors
/dev/sda: dco        312581808 sectors
Warning: can't get size for Disk /dev/mapper/control - 0 B - 1 sectors, sector size=512
Hard disk list
Disk /dev/sda - 160 GB / 149 GiB - CHS 19457 255 63, sector size=512 - SAMSUNG HM160HI, S/N:S1WWJ9AZ251165, FW:HH100-06
Disk /dev/sdb - 1000 GB / 931 GiB - CHS 15200 255 63, sector size=4096 - SAMSUNG HM100UI
Disk /dev/mapper/cryptswap1 - 4039 MB / 3852 MiB - 7888896 sectors, sector size=512
Disk /dev/dm-0 - 4039 MB / 3852 MiB - 7888896 sectors, sector size=512

Partition table type (auto): Intel
Disk /dev/sdb - 1000 GB / 931 GiB - SAMSUNG HM100UI
Partition table type: Intel

Analyse Disk /dev/sdb - 1000 GB / 931 GiB - CHS 15200 255 63
Geometry from i386 MBR: head=255 sector=63
check_part_i386 failed for partition type 83
Current partition structure:
No ext2, JFS, Reiser, cramfs or XFS marker
 1 * Linux                    0   4  5 14873 203 50  238947328
 1 * Linux                    0   4  5 14873 203 50  238947328

search_part()
Disk /dev/sdb - 1000 GB / 931 GiB - CHS 15200 255 63
check_FAT: number of bytes per sector mismatches 512 (FAT) != 4096 (HD)

block_group_nr 1

recover_EXT2: "e2fsck -b 32768 -B 4096 device" may be needed
recover_EXT2: s_block_group_nr=1/7292, s_mnt_count=0/4294967295, s_blocks_per_group=32768, s_inodes_per_group=8192
recover_EXT2: s_blocksize=4096
recover_EXT2: s_blocks_count 238947328
recover_EXT2: part_size 238947328
     Linux                    0   4  5 14873 203 50  238947328 [rikiki]
     ext4 blocksize=4096 Large file Sparse superblock Backup superblock, 978 GB / 911 GiB

Results
   * Linux                    0   4  5 14873 203 50  238947328 [rikiki]
     ext4 blocksize=4096 Large file Sparse superblock Backup superblock, 978 GB / 911 GiB

interface_write()
 1 * Linux                    0   4  5 14873 203 50  238947328 [rikiki]
write!

write_mbr_i386: starting...
write_all_log_i386: starting...
No extended partition
Need to fix
 1 * Linux                    0   4  5 14873 203 50  238947328 [rikiki]
     ext4 blocksize=4096 Large file Sparse superblock Backup superblock, 978 GB / 911 GiB
You will have to reboot for the change to take effect.

TestDisk exited normally.
FWIW, j'ai téléchargé le binaire de la 7.0 WIP et non pas fais un clone du repo git.

paamutbambaki
Posts: 12
Joined: 30 Aug 2013, 13:05

Re: "Write error" lors de la récupération d'une partition NT

#8 Post by paamutbambaki »

D'autres suggestions à l'horizon ? Si cela semble impossible à réparer, je commanderais un nouveau disque dur et tenterai d'y copier ce que je peux sauver (TestDisk me permettant de voir mes fichiers, j'imagine qu'il y a moyen de les extraire ?).

Mais s'il y a autre chose que je puisse tenter pour le ramener à la vie, je suis prêt à essayer :)

User avatar
cgrenier
Site Admin
Posts: 5432
Joined: 18 Feb 2012, 15:08
Location: Le Perreux Sur Marne, France
Contact:

Re: "Write error" lors de la récupération d'une partition NT

#9 Post by cgrenier »

Que donne un

Code: Select all

e2fsck -b 32768 -B 4096 /dev/sdb1

paamutbambaki
Posts: 12
Joined: 30 Aug 2013, 13:05

Re: "Write error" lors de la récupération d'une partition NT

#10 Post by paamutbambaki »

J'ai lancé le e2fsk qui me pose quelques questions. Ne comprenant pas réellement les questions, j'ai validé les réponses par défaut des deux premières, mais arrivé à la troisième, j'ai préféré attendre vos lumières.

Code: Select all

e2fsck 1.41.14 (22-Dec-2010)
Superblock has an invalid journal (inode 8).
Clear<y>? yes

*** ext3 journal has been deleted - filesystem is now ext2 only ***

One or more block group descriptor checksums are invalid.  Fix<y>? yes

Group descriptor 0 checksum is invalid.  FIXED.
Group descriptor 1 checksum is invalid.  FIXED.
Group descriptor 2 checksum is invalid.  FIXED.
[...]
Group descriptor 7290 checksum is invalid.  FIXED.
Group descriptor 7291 checksum is invalid.  FIXED.
Group descriptor 7292 checksum is invalid.  FIXED.
rikiki contains a file system with errors, check forced.
Resize inode not valid.  Recreate<y>?
N'étant pas bien sur de quoi répondre aux questions, j'ai préféré arreter le test et venir voir ici si je peux sans risque valider les choix par défaut de e2fsck ?

Merci

Locked