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 17/10/2015, à 11:06

greg714598

[Résolu] Table des partitions endommagée par Windows Recovery

Bonjour,


Je suis nouveau sur ce forum et il est donc possible que je ne formule pas totalement ma demande dans les règles de l'art de ce forum. D'avance, je m'en excuse.

Mon problème est aujourd'hui la conséquence d'une série de problèmes récents. Depuis longtemps, j'avais un disque en dual boot : Windows 7 d'un côté et Ubuntu 13 et Ubuntu 15 sur deux partititions de la partitions Extended. Je n'avais jamais eu aucun probème. Il y a quelques mois, j'installe la version Preview de Windows 10 en espérant que cela règlera les problèmes de lenteur de Windows 7. Cela ne règle rien mais ce n'est pas grave puisque je n'utilise quasiement jamais Windows. Début octobre, j'ouvre, après plusieurs semaines de non utilisation, Windows 10 : ce sera la dernière fois car suite à cela, un message s'affichera automatiquement au démarrage Windows indiquant que ma version de Windows Preview a expiré.

J'espérais au moins pouvoir accéder aux données des partitions Windows depuis Ubuntu mais cela est devenu également impossible : Ubuntu m'indique que les partitiions semblent être en mode « Unsafe » / « Hibernation ». Windows 10 Preview ne fonctionnant plus, je me dis que la solution sera de rétrograder Windows à sa version 7. Pour la première fois, dans le lanceur Grub, je lance donc l'option « Windows Recovery ». Toutefois, ayant quelques doutes sur l'intérêt à le faire, je quitte ce processus dès qu'on me le propose,avant même d'avoir donné mon accord pour que débute véritablement le processus de restauration.

Le drame c'est qu'en lançant simplement depuis le GRUB cette partition où se trouve le processus de restauration Windows, la table de partitions semble avoir été endommagée. La seule bonne nouvelle, c'est depuis un Live CD Ubuntu, j'ai désormais accès au contenu des partitions WIndows.

Voilà ce que j'observe :


Au démarrage de l'ordinateur :

Error: no such partition.
Entering recue mode…
grub rescue>


J'ai d'abord cru qu'ouvrir une session Ubuntu avec un « Live-cd » puis de lancer Boot-Repair suffirait mais ce n'est pas le cas car, d'après Gparted, la partition Extended est désormais considérée comme « non allouée ».

Suivant les conseils sur Internet, je me suis essayé à diverses commandes telles que sudo sfdisk -d /dev/sda


# partition table of /dev/sda
unit: sectors

/dev/sda1 : start=     2048, size= 52428800, Id=1c
/dev/sda2 : start= 52430848, size=586057728, Id= 7, bootable
/dev/sda3 : start=638488576, size=196164776, Id= 7
/dev/sda4 : start=834654206, size=630493186, Id= 5
/dev/sda5 : start=1453027328, size= 12120064, Id=82

Voilà ce que donne sudo fdisk -lu :

Disk /dev/loop0: 1 GiB, 1101672448 bytes, 2151704 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/sda: 698,7 GiB, 750156374016 bytes, 1465149168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xe3102a4b

Device     Boot      Start        End   Sectors   Size Id Type
/dev/sda1             2048   52430847  52428800    25G 1c Hidden W95 FAT32 (LBA)
/dev/sda2  *      52430848  638488575 586057728 279,5G  7 HPFS/NTFS/exFAT
/dev/sda3        638488576  834653351 196164776  93,6G  7 HPFS/NTFS/exFAT
/dev/sda4        834654206 1465147391 630493186 300,7G  5 Extended
/dev/sda5       1453027328 1465147391  12120064   5,8G 82 Linux swap / Solaris

Partition 5 does not start on physical sector boundary.

Disk /dev/sdb: 15,2 GiB, 16358768640 bytes, 31950720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xc3072e18

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdb1  *     3504 31950719 31947216 15,2G  c W95 FAT32 (LBA)

J'ai également eu recours à Testdisk.

Voici ce que donne le premier écran, celui donnant la structure des partitions :

Disk /dev/sda - 750 GB / 698 GiB - CHS 91201 255 63
Current partition structure:
     Partition                  Start        End    Size in sectors

 1 P hid. FAT32 LBA           0  32 33  3263 170 43   52428800 [RECOVERY]
 2 * HPFS - NTFS           3263 170 44 39744  19 19  586057728 [OS]
 3 P HPFS - NTFS          39744  19 20 51954 195 57  196164776 [DATA]
 4 E extended             51954 209 30 91201  52 51  630493186
 5 L Linux Swap           90446 195 54 91201  52 51   12120064

Voice ce que donne une « Quick Search » avec laquelle j'ai pu par ailleurs vérifier que les dossiers et fichiers de chaque partition sont intacts :

Disk /dev/sda - 750 GB / 698 GiB - CHS 91201 255 63
     Partition               Start        End    Size in sectors
>  FAT32 LBA                0  32 33  3263 170 43   52428800 [RECOVERY]
   HPFS - NTFS           3263 170 44 39744  19 19  586057728 [OS]
   HPFS - NTFS          39744  19 20 51954 209 31  196165632 [DATA]
   Linux                51954 209 32 70244 108  8  293822464
   Linux                70244 108  9 90445 190 49  324534272
   Linux Swap           90446 195 54 91201  52 51   12120064

Enfin, voici ce que donne une « Deep search » :


Disk /dev/sda - 750 GB / 698 GiB - CHS 91201 255 63

The harddisk (750 GB / 698 GiB) seems too small! (< 825 GB / 769 GiB)
Check the harddisk size: HD jumpers settings, BIOS detection...

The following partitions can't be recovered:
     Partition               Start        End    Size in sectors
>  Linux                80182  41 52 100383 124 29  324534272
   Linux                80185  24 32 100386 107  9  324534272
   Linux                80185  89 33 100386 172 10  324534272
   Linux                80189  12 16 100390  94 56  324534272
   Linux                80194   5  4 100395  87 44  324534272
   Linux                80195 237 43 100397  65 20  324534272





[ Continue ]
ext4 blocksize=4096 Large file Sparse superblock Recover, 166 GB / 154 GiB

A ce stade, je suppose que la solution consiste à réécrire la table des partitions de manière correcte mais comment, ça je l'ignore.

Quelqu'un pourrait-il m'aider ?


Modération : merci à l'avenir d'utiliser les balises code (explications ici).

Dernière modification par greg714598 (Le 01/10/2017, à 04:00)

Hors ligne

#2 Le 17/10/2015, à 11:55

Nasman

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Bonjour,
On va essayer de t'aider. Alors peux tu poster le résultat de la commande suivante :

sudo dd if=/dev/sda bs=512 count=1 skip=834654206 | hexdump -C

(zone amorce de sda4, contient l'emplacement de sda5 et de l'ebr suivant)

Avec aussi

sudo dd if=/dev/sda bs=512 count=10 skip=834654208 | hexdump -C
sudo dd if=/dev/sda bs=512 count=10 skip=1128476672 | hexdump -C

Les deux dernières commandes concernent les deux premières partitions Linux données par le quick search de testdisk.
Le paramètre de skip indique le début de la partition dans le système LBA avec
LBA = cylindre_début * 16065 + tête_début * 63 + secteur - 1
(16065 car il y a 255têtes de 63 secteurs par piste)

Dernière modification par Nasman (Le 17/10/2015, à 12:34)


PC fixe sous Bionic 64 bits et portable avec Focal 64 bits

Hors ligne

#3 Le 17/10/2015, à 11:56

malbo

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Cet extrait indique que tu as été victime de l'installateur de Windows 10 :

Device     Boot      Start        End   Sectors   Size Id Type
/dev/sda1             2048   52430847  52428800    25G 1c Hidden W95 FAT32 (LBA)
/dev/sda2  *      52430848  638488575 586057728 279,5G  7 HPFS/NTFS/exFAT
/dev/sda3        638488576  834653351 196164776  93,6G  7 HPFS/NTFS/exFAT
/dev/sda4        834654206 1465147391 630493186 300,7G  5 Extended
/dev/sda5       1453027328 1465147391  12120064   5,8G 82 Linux swap / Solaris

La "signature" du tueur en série (ici c'est Windows 10 le tueur mais c'est pareil avec Windows 7 ou Windows 8) est la suivante : il reste une seule partition dans la partition étendue : c'est la partition sda5 placée en fin de partition étendue (voir EDIT en bas de ce post)
Moi je ne sais pas t'aider à récupérer tes partitions avec Testdisk.

Hors ligne

#4 Le 17/10/2015, à 12:29

greg714598

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Bonjour Nasman,

Les trois commandes renvoient ce même message :

dd: failed to open ‘:dev:sda’: No such file or directory

Hors ligne

#5 Le 17/10/2015, à 12:34

Nasman

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Au temps pour moi, c'est /dev/sda - je corrige le post


PC fixe sous Bionic 64 bits et portable avec Focal 64 bits

Hors ligne

#6 Le 17/10/2015, à 12:39

greg714598

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Nasman,

Voici les résultats :

Première commande :


ubuntu@ubuntu:~$ sudo dd if=/dev/sda bs=512 count=1 skip=834654206 | hexdump -C
00000000  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
000001b0  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff 00 fe  |................|
000001c0  ff ff 82 fe ff ff 02 a0  db 24 00 f0 b8 00 00 00  |.........$......|
000001d0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000001f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 55 aa  |..............U.|
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0,000478932 s, 1,1 MB/s
00000200

Deuxième commande :

ubuntu@ubuntu:~$ sudo dd if=/dev/sda bs=512 count=10 skip=834654208 | hexdump -C00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000400  00 20 8c 00 91 6b 30 02  60 05 1c 00 87 9e 48 00  |. ...k0.`.....H.|
00000410  01 9f 80 00 00 00 00 00  02 00 00 00 02 00 00 00  |................|
00000420  00 80 00 00 00 80 00 00  00 20 00 00 88 c6 1e 56  |......... .....V|
00000430  e8 ca 1e 56 88 00 ff ff  53 ef 01 00 01 00 00 00  |...V....S.......|
00000440  ce aa 6c 53 00 00 00 00  00 00 00 00 01 00 00 00  |..lS............|
00000450  00 00 00 00 0b 00 00 00  00 01 00 00 3c 00 00 00  |............<...|
00000460  42 02 00 00 7b 00 00 00  0a 9a ff ff c5 ab 4a 39  |B...{.........J9|
00000470  80 80 01 af 47 4d 6f 5b  00 00 00 00 00 00 00 00  |....GMo[........|
00000480  00 00 00 00 00 00 00 00  2f 6d 65 64 69 61 2f 67  |......../media/g|
00000490  72 65 67 2f 30 61 39 61  66 66 66 66 2d 63 35 61  |reg/0a9affff-c5a|
000004a0  62 2d 34 61 33 39 2d 38  30 38 30 2d 30 31 61 66  |b-4a39-8080-01af|
000004b0  34 37 34 64 36 66 35 62  00 62 00 00 00 00 00 00  |474d6f5b.b......|
000004c0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 f7 03  |................|
000004d0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
000004e0  08 00 00 00 00 00 00 00  00 00 00 00 1a 8d 28 d0  |..............(.|
000004f0  6d 09 41 54 bc 96 5d be  bd 95 51 0f 01 01 00 00  |m.AT..]...Q.....|
00000500  0c 00 00 00 00 00 00 00  30 f2 35 50 0a f3 01 00  |........0.5P....|
00000510  04 00 01 00 00 00 00 00  00 00 00 00 0b 2f bf 01  |............./..|
00000520  00 00 00 00 51 00 00 00  30 00 00 00 d0 a0 01 00  |....Q...0.......|
00000530  81 00 00 00 7e 7f 00 00  81 80 48 02 ff 7f 00 00  |....~.....H.....|
00000540  01 00 00 00 ff ff 48 02  00 00 00 00 00 00 00 08  |......H.........|
00000550  00 00 00 00 00 00 00 00  00 00 00 00 1c 00 1c 00  |................|
00000560  01 00 00 00 ea 7f 00 00  00 00 00 00 00 00 00 00  |................|
00000570  00 00 00 00 04 00 00 00  72 7c 23 23 00 00 00 00  |........r|##....|
00000580  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00001000  01 04 00 00 11 04 00 00  21 04 00 00 7c 01 02 00  |........!...|...|
00001010  03 03 04 00 00 00 00 00  00 00 00 00 00 00 8a 5b  |...............[|
00001020  02 04 00 00 12 04 00 00  21 06 00 00 a3 02 00 00  |........!.......|
00001030  f6 05 04 00 00 00 00 00  00 00 00 00 00 00 26 a8  |..............&.|
00001040  03 04 00 00 13 04 00 00  21 08 00 00 00 00 00 00  |........!.......|
00001050  a2 05 04 00 00 00 00 00  00 00 00 00 00 00 16 cc  |................|
00001060  04 04 00 00 14 04 00 00  21 0a 00 00 29 0f 00 00  |........!...)...|
00001070  44 0a 04 00 00 00 00 00  00 00 00 00 00 00 c0 c2  |D...............|
00001080  05 04 00 00 15 04 00 00  21 0c 00 00 4b 07 00 00  |........!...K...|
00001090  cd 03 04 00 00 00 00 00  00 00 00 00 00 00 f3 ec  |................|
000010a0  06 04 00 00 16 04 00 00  21 0e 00 00 1a 01 36 00  |........!.....6.|
000010b0  a7 08 04 00 00 00 00 00  00 00 00 00 00 00 9d 48  |...............H|
000010c0  07 04 00 00 17 04 00 00  21 10 00 00 dd 0d 2b 00  |........!.....+.|
000010d0  83 03 04 00 00 00 00 00  00 00 00 00 00 00 26 93  |..............&.|
000010e0  08 04 00 00 18 04 00 00  21 12 00 00 25 00 00 00  |........!...%...|
000010f0  31 02 04 00 00 00 00 00  00 00 00 00 00 00 e1 72  |1..............r|
00001100  09 04 00 00 19 04 00 00  21 14 00 00 73 01 01 00  |........!...s...|
00001110  e5 01 04 00 00 00 00 00  00 00 00 00 00 00 cd df  |................|
00001120  0a 04 00 00 1a 04 00 00  21 16 00 00 01 08 00 00  |........!.......|
00001130  52 02 04 00 00 00 00 00  00 00 00 00 00 00 f9 b5  |R...............|
00001140  0b 04 00 00 1b 04 00 00  21 18 00 00 00 38 01 00  |........!....8..|
00001150  8a 00 04 00 00 00 00 00  00 00 00 00 00 00 b4 ba  |................|
00001160  0c 04 00 00 1c 04 00 00  21 1a 00 00 c2 02 00 00  |........!.......|
00001170  7e 03 04 00 00 00 00 00  00 00 00 00 00 00 e2 74  |~..............t|
00001180  0d 04 00 00 1d 04 00 00  21 1c 00 00 a7 02 03 00  |........!.......|
00001190  58 06 04 00 00 00 00 00  00 00 00 00 00 00 19 7f  |X...............|
000011a0  0e 04 00 00 1e 04 00 00  21 1e 00 00 9f 19 01 00  |........!.......|
000011b0  ea 04 04 00 00 00 00 00  00 00 00 00 00 00 f0 cb  |................|
000011c0  0f 04 00 00 1f 04 00 00  21 20 00 00 46 02 01 00  |........! ..F...|
000011d0  f2 01 04 00 00 00 00 00  00 00 00 00 00 00 56 43  |..............VC|
000011e0  10 04 00 00 20 04 00 00  21 22 00 00 b4 00 08 00  |.... ...!"......|
000011f0  bd 08 04 00 00 00 00 00  00 00 00 00 00 00 5f 07  |.............._.|
00001200  00 00 08 00 10 00 08 00  20 00 08 00 00 00 00 00  |........ .......|
00001210  66 0a 04 00 00 00 00 00  00 00 00 00 00 00 d4 38  |f..............8|
00001220  01 00 08 00 11 00 08 00  20 02 08 00 00 00 00 00  |........ .......|
00001230  c6 02 04 00 00 00 00 00  00 00 00 00 00 00 b0 70  |...............p|
00001240  02 00 08 00 12 00 08 00  20 04 08 00 00 00 02 00  |........ .......|
00001250  c7 04 04 00 00 00 00 00  00 00 00 00 00 00 56 b7  |..............V.|
00001260  03 00 08 00 13 00 08 00  20 06 08 00 00 00 05 00  |........ .......|
00001270  aa 02 04 00 00 00 00 00  00 00 00 00 00 00 aa 4e  |...............N|
00001280  04 00 08 00 14 00 08 00  20 08 08 00 00 00 00 00  |........ .......|
00001290  50 00 04 00 00 00 00 00  00 00 00 00 00 00 90 07  |P...............|
000012a0  05 00 08 00 15 00 08 00  20 0a 08 00 00 00 00 00  |........ .......|
000012b0  33 03 04 00 00 00 00 00  00 00 00 00 00 00 2d 07  |3.............-.|
000012c0  06 00 08 00 16 00 08 00  20 0c 08 00 00 00 02 00  |........ .......|
000012d0  81 03 04 00 00 00 00 00  00 00 00 00 00 00 70 75  |..............pu|
000012e0  07 00 08 00 17 00 08 00  20 0e 08 00 00 00 35 00  |........ .....5.|
000012f0  4b 03 04 00 00 00 00 00  00 00 00 00 00 00 37 39  |K.............79|
00001300  08 00 08 00 18 00 08 00  20 10 08 00 00 00 02 00  |........ .......|
00001310  c9 00 04 00 00 00 00 00  00 00 00 00 00 00 36 fa  |..............6.|
00001320  09 00 08 00 19 00 08 00  20 12 08 00 00 00 1d 00  |........ .......|
00001330  78 02 04 00 00 00 00 00  00 00 00 00 00 00 13 91  |x...............|
00001340  0a 00 08 00 1a 00 08 00  20 14 08 00 00 00 32 00  |........ .....2.|
00001350  2f 04 04 00 00 00 00 00  00 00 00 00 00 00 7e 4d  |/.............~M|
00001360  0b 00 08 00 1b 00 08 00  20 16 08 00 00 00 23 00  |........ .....#.|
00001370  c9 03 04 00 00 00 00 00  00 00 00 00 00 00 85 d0  |................|
00001380  0c 00 08 00 1c 00 08 00  20 18 08 00 00 00 20 00  |........ ..... .|
00001390  0d 04 04 00 00 00 00 00  00 00 00 00 00 00 0f c0  |................|
000013a0  0d 00 08 00 1d 00 08 00  20 1a 08 00 00 00 b5 12  |........ .......|
000013b0  2c 01 04 00 00 00 00 00  00 00 00 00 00 00 c4 76  |,..............v|
000013c0  0e 00 08 00 1e 00 08 00  20 1c 08 00 00 08 c9 00  |........ .......|
000013d0  52 00 04 00 00 00 00 00  00 00 00 00 00 00 e3 06  |R...............|
000013e0  0f 00 08 00 1f 00 08 00  20 1e 08 00 00 00 59 16  |........ .....Y.|
000013f0  86 01 04 00 00 00 00 00  00 00 00 00 84 14 f0 5c  |...............\|
10+0 records in
10+0 records out
5120 bytes (5,1 kB) copied, 0,00811735 s, 631 kB/s
00001400

Troisième commande :

ubuntu@ubuntu:~$ sudo dd if=/dev/sda bs=512 count=10 skip=1128476672 | hexdump -C
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000400  60 0d 9b 00 00 00 6b 02  32 f3 1e 00 94 6b 55 00  |`.....k.2....kU.|
00000410  17 d4 91 00 00 00 00 00  02 00 00 00 02 00 00 00  |................|
00000420  00 80 00 00 00 80 00 00  10 20 00 00 71 4b 1f 56  |......... ..qK.V|
00000430  71 4b 1f 56 d7 01 ff ff  53 ef 01 00 01 00 00 00  |qK.V....S.......|
00000440  0a b1 6c 53 00 00 00 00  00 00 00 00 01 00 00 00  |..lS............|
00000450  00 00 00 00 0b 00 00 00  00 01 00 00 3c 00 00 00  |............<...|
00000460  42 02 00 00 7b 00 00 00  3e 2c b8 26 e6 63 4b 86  |B...{...>,.&.cK.|
00000470  bc ef 51 a8 13 6b 64 c8  00 00 00 00 00 00 00 00  |..Q..kd.........|
00000480  00 00 00 00 00 00 00 00  2f 00 65 64 69 61 2f 67  |......../.edia/g|
00000490  72 65 67 2f 33 65 32 63  62 38 32 36 2d 65 36 36  |reg/3e2cb826-e66|
000004a0  33 2d 34 62 38 36 2d 62  63 65 66 2d 35 31 61 38  |3-4b86-bcef-51a8|
000004b0  31 33 36 62 36 34 63 38  00 00 00 00 00 00 00 00  |136b64c8........|
000004c0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 f6 03  |................|
000004d0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
000004e0  08 00 00 00 00 00 00 00  00 00 00 00 8c 07 66 c8  |..............f.|
000004f0  32 37 4d a4 97 28 25 c8  e7 07 f9 e9 01 01 00 00  |27M..(%.........|
00000500  0c 00 00 00 00 00 00 00  0a b1 6c 53 0a f3 02 00  |..........lS....|
00000510  04 00 00 00 00 00 00 00  00 00 00 00 ff 7f 00 00  |................|
00000520  00 80 30 01 ff 7f 00 00  01 00 00 00 ff ff 30 01  |..0...........0.|
00000530  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000540  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 08  |................|
00000550  00 00 00 00 00 00 00 00  00 00 00 00 1c 00 1c 00  |................|
00000560  01 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000570  00 00 00 00 04 00 00 00  a7 67 e2 35 00 00 00 00  |.........g.5....|
00000580  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00001000  01 04 00 00 11 04 00 00  21 04 00 00 30 59 15 1d  |........!...0Y..|
00001010  7b 00 04 00 00 00 00 00  00 00 00 00 00 00 6f 02  |{.............o.|
00001020  02 04 00 00 12 04 00 00  22 06 00 00 ea 23 cb 1d  |........"....#..|
00001030  6b 00 04 00 00 00 00 00  00 00 00 00 ee 17 eb 74  |k..............t|
00001040  03 04 00 00 13 04 00 00  23 08 00 00 bd 3b 09 20  |........#....;. |
00001050  07 00 04 00 00 00 00 00  00 00 00 00 cb 1f 5c 37  |..............\7|
00001060  04 04 00 00 14 04 00 00  24 0a 00 00 da 1e 10 20  |........$...... |
00001070  00 00 05 00 00 00 00 00  00 00 00 00 10 20 2d df  |............. -.|
00001080  05 04 00 00 15 04 00 00  25 0c 00 00 44 20 10 20  |........%...D . |
00001090  00 00 05 00 00 00 00 00  00 00 00 00 10 20 5c 73  |............. \s|
000010a0  06 04 00 00 16 04 00 00  26 0e 00 00 4f 1e 10 20  |........&...O.. |
000010b0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 07 93  |............. ..|
000010c0  07 04 00 00 17 04 00 00  27 10 00 00 1f 53 10 20  |........'....S. |
000010d0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 67 6e  |............. gn|
000010e0  08 04 00 00 18 04 00 00  28 12 00 00 4d 3a 10 20  |........(...M:. |
000010f0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 9a 34  |............. .4|
00001100  09 04 00 00 19 04 00 00  29 14 00 00 7d 3c 10 20  |........)...}<. |
00001110  00 00 05 00 00 00 00 00  00 00 00 00 10 20 3a 74  |............. :t|
00001120  0a 04 00 00 1a 04 00 00  2a 16 00 00 64 52 10 20  |........*...dR. |
00001130  00 00 05 00 00 00 00 00  00 00 00 00 10 20 f8 f8  |............. ..|
00001140  0b 04 00 00 1b 04 00 00  2b 18 00 00 ff 7f 10 20  |........+...... |
00001150  00 00 05 00 00 00 00 00  00 00 00 00 10 20 ec 90  |............. ..|
00001160  0c 04 00 00 1c 04 00 00  2c 1a 00 00 88 65 10 20  |........,....e. |
00001170  00 00 05 00 00 00 00 00  00 00 00 00 10 20 92 3f  |............. .?|
00001180  0d 04 00 00 1d 04 00 00  2d 1c 00 00 0f 4d 10 20  |........-....M. |
00001190  00 00 05 00 00 00 00 00  00 00 00 00 10 20 da ac  |............. ..|
000011a0  0e 04 00 00 1e 04 00 00  2e 1e 00 00 25 19 10 20  |............%.. |
000011b0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 d5 c6  |............. ..|
000011c0  0f 04 00 00 1f 04 00 00  2f 20 00 00 00 07 10 20  |......../ ..... |
000011d0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 54 ae  |............. T.|
000011e0  10 04 00 00 20 04 00 00  30 22 00 00 00 00 10 20  |.... ...0"..... |
000011f0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 e7 6d  |............. .m|
00001200  00 00 08 00 10 00 08 00  20 00 08 00 54 09 ef 1f  |........ ...T...|
00001210  06 00 04 00 00 00 00 00  00 00 00 00 00 00 1e 15  |................|
00001220  01 00 08 00 11 00 08 00  21 02 08 00 e5 13 10 20  |........!...... |
00001230  00 00 04 00 00 00 00 00  00 00 00 00 2f 08 2c 55  |............/.,U|
00001240  02 00 08 00 12 00 08 00  22 04 08 00 00 00 10 20  |........"...... |
00001250  00 00 04 00 00 00 00 00  00 00 00 00 84 1e 15 11  |................|
00001260  03 00 08 00 13 00 08 00  23 06 08 00 e2 55 10 20  |........#....U. |
00001270  00 00 05 00 00 00 00 00  00 00 00 00 10 20 b5 a0  |............. ..|
00001280  04 00 08 00 14 00 08 00  24 08 08 00 c3 7c 10 20  |........$....|. |
00001290  00 00 05 00 00 00 00 00  00 00 00 00 10 20 12 4a  |............. .J|
000012a0  05 00 08 00 15 00 08 00  25 0a 08 00 44 52 10 20  |........%...DR. |
000012b0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 fc 12  |............. ..|
000012c0  06 00 08 00 16 00 08 00  26 0c 08 00 92 5d 10 20  |........&....]. |
000012d0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 0c 25  |............. .%|
000012e0  07 00 08 00 17 00 08 00  27 0e 08 00 d2 38 10 20  |........'....8. |
000012f0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 29 d2  |............. ).|
00001300  08 00 08 00 18 00 08 00  28 10 08 00 1d 6c 10 20  |........(....l. |
00001310  00 00 05 00 00 00 00 00  00 00 00 00 10 20 37 cd  |............. 7.|
00001320  09 00 08 00 19 00 08 00  29 12 08 00 3c 6d 10 20  |........)...<m. |
00001330  00 00 05 00 00 00 00 00  00 00 00 00 10 20 37 07  |............. 7.|
00001340  0a 00 08 00 1a 00 08 00  2a 14 08 00 aa 77 10 20  |........*....w. |
00001350  00 00 05 00 00 00 00 00  00 00 00 00 10 20 cc 70  |............. .p|
00001360  0b 00 08 00 1b 00 08 00  2b 16 08 00 ff 7b 10 20  |........+....{. |
00001370  00 00 05 00 00 00 00 00  00 00 00 00 10 20 03 c3  |............. ..|
00001380  0c 00 08 00 1c 00 08 00  2c 18 08 00 70 77 10 20  |........,...pw. |
00001390  00 00 05 00 00 00 00 00  00 00 00 00 10 20 ee 7b  |............. .{|
000013a0  0d 00 08 00 1d 00 08 00  2d 1a 08 00 04 18 10 20  |........-...... |
000013b0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 a3 10  |............. ..|
000013c0  0e 00 08 00 1e 00 08 00  2e 1c 08 00 ff 26 10 20  |.............&. |
000013d0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 8f dd  |............. ..|
000013e0  0f 00 08 00 1f 00 08 00  2f 1e 08 00 3d 14 10 20  |......../...=.. |
000013f0  00 00 05 00 00 00 00 00  00 00 00 00 10 20 ac 5a  |............. .Z|
10+0 records in
10+0 records out
5120 bytes (5,1 kB) copied, 0,00798269 s, 641 kB/s
00001400

Modération : merci à l'avenir d'utiliser les balises code (explications ici).

Dernière modification par cqfd93 (Le 17/10/2015, à 12:53)

Hors ligne

#7 Le 17/10/2015, à 14:07

Nasman

Re : [Résolu] Table des partitions endommagée par Windows Recovery

La première commande indique que ta partition de swap commence en 1453027328 (0x24dba002 secteurs, soit 618373122 en décimal, après l'ebr courant qui est ici 834654206. Il n'y a pas d'autre ebr de mentionné - sans doute l'effet "Windows 10".
Les deux partitions indiquées par testdisk semblent bien être des partitions Linux. En avais tu deux autres qui manquent en plus de ta partition de swap ?
Il faudrait que tu nous en dise le maximum sur l'histoire de ce disque car testdisk retrouve les différents schémas de partition durant la vie du disque.

Par expérience les en-têtes des partition ext4 sont caractérisés par :
- rien dans les premiers secteurs, les données comencent à l'offset 400
- un point de montage est présent en 488

On va regarder de plus près comment réaccéder aux partitions disparues.

selon testdisk la première partition Linux va de 834654208 à 1128476671
la deuxième va de 1128476672 à 1453010943

La swap commence en 1453027328 et finit en 1465147391

On aurait donc la succession des partitions suivantes :
FAT32   2048 - 52430847
NTFS  52430848 - 638488575
NTFS 638488576 - 834653351
854 secteurs (inutilisables)
EBR 834654206-834654207
Linux 834654208 - 1128476671
Linux 1128476672 - 1453010943
16384 secteurs
Linux-swap 1453027328 - 1465147391

Avant d'aller plus loin il nous faut des infos supplémentaires.


PC fixe sous Bionic 64 bits et portable avec Focal 64 bits

Hors ligne

#8 Le 17/10/2015, à 16:57

greg714598

Re : [Résolu] Table des partitions endommagée par Windows Recovery

J'avais bien deux partitions Linux (l'une avec Ubuntu 13 et l'autre avec Ubuntu 15.04).


Voici les quelques événements qui, de mémoire, ont marqué la vie de ce disque :


- Janvier 2012 : acquisition de l'ordinateur livré avec Windows 7, sans DVD-ROM d'installation du fait du système de restauration intégré. Je ne me souviens plus si j'ai immédiatement installé Ubuntu (version 13.04 ou version 13.10 – je ne sais plus) ou si je l'ai installé en février, ayant très peu utilisé mon ordinateur au cours des premières semaines. Ce qui est à peu près sûr, c'est que l'installation d'Ubuntu a créé une partition « Extended », vraisemblablement celle commençant au secteur 834654208.

- Jusqu'en septembre 2013, j'ai presque utilisé exclusivement Windows 7 et très peu Ubuntu. En septembre 2013, face  des problèmes de performance irrésolus sur Windows 7, je me lance véritablement dans l'expérience Ubuntu et y suis resté fidèle depuis lors. Je n'utilise quasiement plus Windows. Au cours de ce même mois, j'en profite pour paramétrer correctement Ubuntu 13, notamment pour pouvoir exploiter ma carte graphique Nvidia.

- En mai 2014, je me décide à passer à Ubuntu 14.04. Je redoute toutefois qu'une mise à niveau d'Ubuntu 13 soit source de complications, complications qui pourraient me faire perdre le seul OS me donnant satisfaction sur mon ordinateur. Je décide donc d'installer Ubuntu 14.04 sur une nouvelle partition. Cette seconde partition Linux créée en mai 2014, c'est très vraisemblablement celle débutant au secteur 1128476672. L'installation se passe sans aucun problème. Grub me proposera désormais comme choix principaux Windows, Ubuntu 13 (réduit à un rôle d'OS de secours) et Ubuntu 14.04.

- En avril ou en juin 2015 (je ne sais plus), j'installe la version Preview de Windows 10 en lieu et place de Windows 7 : j'y vois une solution potentielle au problème de performance de Windows 7. L'installation se déroule correctement mais Windows s'avère toujours aussi lent. Mais de toute façon, je comptais bien rester fidèle à Linux...

- En septembre 2015, je procède à la mise à niveau d'Ubuntu 14.04 vers Ubuntu 14.10 puis immédiatement après, vers Ubuntu 15.04. Il s'agit donc d'une mise à niveau de l'OS de la seconde partition Linux. Tout se passe correctement. Je dois seulement procéder à quelques paramétrages après l'installation, notamment pour pouvoir exploiter de nouveau ma carte graphique en lieu et place de l'Intel Sandbridge. Désormais, Grub me propose comme choix principaux Windows 10 Preview, Ubuntu 13 et Ubuntu 15.04.

- Arrive l'heure du drame. Début octobre, après un certain temps de non utilisation de Windows, je réaccède à l'OS de Microsoft. Ce sera la dernière fois puisque lorsque j'essaye de nouveau d'y accéder quelques jours plus tard (jeudi dernier), je découvre, après avoir choisi Windows dans le Grub, un message m'informant que cette version Preview de Windows a expiré, lequel ne me laisse pas d'autre choix que de redémarrer l'ordinateur. Plus gênant, Ubuntu ne parvient plus à accéder aux partitions Windows (pour cause de mode « hibernation ») alors qu'Ubuntu m'avait toujours laisser accéder en écriture et lecture à « OS » et « DATA ». Je décide donc de rétrograder à Windows 7 en faisant pour la première fois le choix, dans le Grub, de la partition Windows Recovery. La suite vous est connue : ce simple choix dans le Grub, sans même véritablement aller plus loin dans le processus de restauration, a altéré la table des partitions. L'unique bonne nouvelle est que le live CD d'Ubuntu me permet de nouveau d'accéder aux partitions Windows « OS » et « DATA ».

Hors ligne

#9 Le 17/10/2015, à 17:34

heronheronpetitpatapon

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Au plus simple selon moi et sans passer 3 ans sur le sujet :
- Télécharge et grave une image d'Ubuntu et installe làa sur une clé usb. Une fois que cela est fait :
- Démarre ton pc sur la clé ubuntu = ubuntu se lancera en session livre.
- Tu pourra ainsi accéder a une interface fonctionnelle et récupérer toutes tes données de windows comme d'Ubuntu en faisant une sauvegarde sur un HDD.
-  RÉINSTALLE Ubuntu a zéro d'abord après tu réinstallera windows ( vérifie que tu s bien une copie du cd de Windows pour le réinstaller)
- Tu aura un pc tout neuf avec un dual boot avec Ubuntu et Windows
= Adieux les longues réparations longues et compliquées. moi je réglerai ça comme ça en tout cas. Après je ne suis pas devant ta machine!


...Ubuntu Rocks....

Hors ligne

#10 Le 17/10/2015, à 17:50

greg714598

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Je suis déjà sur une session Live CD d'Ubuntu (le boot USB ne fonctionne pas, même paramétré dans le BIOS). J'ai donc déjà pu sauvergarder tout ce que je souhaitais.

L'approche de Nasman me permettra peut-être cependant d'éviter de devoir tout redémarrer depuis zéro, d'autant plus que j'ai vérifié avec Testdisk que toutes les données de toutes les partitions sont toujours présentes et intactes.

Hors ligne

#11 Le 18/10/2015, à 11:49

greg714598

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Quoi qu'il en soit, merci heronheronpetitpatapon (ou devrais-je dire Marc-Henry ? wink )


Nasman, à bien reconsidérer la chose, je pense que la liste de partitions que tu suggères est correcte. Mais j'ignore néanmoins comment utiliser Testdisk pour corriger la table des partitions en conséquence.

Je me suis essayé à diverses combinaisons dans l'écran « Quick Search » de TestDisk sachant que TestDisk ne me laisse assigner que des Primary, des Logical et des Primary Boot (pas de Deleted ou d'Extentended). L'une des combinaisons possibles est celle présentée ci-dessous. Mais dans e cas de figure, il m'est refusé de « récupérer » la première partition Linux (celle débutant à 51954), partition qui est la plus ancienne historiquement, qui est celle que je n'utilisais plus couramment et qui est celle, si je t'ai bien compris Nasman, qui comprend l'ERB en plus d'Ubuntu 13. Est-ce que la structure de partitions présentée ci-dessous fonctionnerait, fût-ce au prix du sacrifice de la première partition Linux ? Y a-t-il d'autres structures possibles (d'après l'écran « Quick Search » TestDisk, pas vraiment car récupérer la partition commençant à 51954 me contraint à abandonner la plupart des autres) ? Y a-t-il une autre manière de procéder avec TestDisk ?

TestDisk 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sda - 750 GB / 698 GiB - CHS 91201 255 63
     Partition               Start        End    Size in sectors
 P FAT32 LBA                0  32 33  3263 170 43   52428800 [RECOVERY]
 * HPFS - NTFS           3263 170 44 39744  19 19  586057728 [OS]
 P HPFS - NTFS          39744  19 20 51954 209 31  196165632 [DATA]
>  Linux                51954 209 32 70244 108  8  293822464
 L Linux                70244 108  9 90445 190 49  324534272
 L Linux Swap           90446 195 54 91201  52 51   12120064

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 continueubuntu@ubuntu:~$ 
ext4 blocksize=4096 Large file Sparse superblock, 150 GB / 140 GiB

Malbo,

Si j'ai bien compris ton propos et ce que j'ai lu sur ce forum et sur d'autres, Windows 10 installerait une nouvelle partition Sda3, juste après la partition principale Windows (sda2). Mes partitions Linux auraient été, sur le disque, situées avant Sda5 (dévolu au Swap Linux) mais cependant, les identifiants numériques assignés aux deux partitions Linux étaient supérieurs à 5 et par conséquent, lors de sa réécriture de la table de partition, Windows 10 les aurait ignorées ? Y aurait-il un moyen autre que Testdisk pour résoudre cela ?

Dernière modification par greg714598 (Le 18/10/2015, à 11:52)

Hors ligne

#12 Le 18/10/2015, à 12:38

malbo

Re : [Résolu] Table des partitions endommagée par Windows Recovery

greg714598 a écrit :

Y aurait-il un moyen autre que Testdisk pour résoudre cela ?

Pas à ma connaissance.

Hors ligne

#13 Le 18/10/2015, à 12:59

Bougron

Re : [Résolu] Table des partitions endommagée par Windows Recovery

greg714598 a écrit :

Quoi qu'il en soit, merci heronheronpetitpatapon (ou devrais-je dire Marc-Henry ? wink )


Nasman, à bien reconsidérer la chose, je pense que la liste de partitions que tu suggères est correcte. Mais j'ignore néanmoins comment utiliser Testdisk pour corriger la table des partitions en conséquence.

Je me suis essayé à diverses combinaisons dans l'écran « Quick Search » de TestDisk sachant que TestDisk ne me laisse assigner que des Primary, des Logical et des Primary Boot (pas de Deleted ou d'Extentended). L'une des combinaisons possibles est celle présentée ci-dessous. Mais dans e cas de figure, il m'est refusé de « récupérer » la première partition Linux (celle débutant à 51954), partition qui est la plus ancienne historiquement, qui est celle que je n'utilisais plus couramment et qui est celle, si je t'ai bien compris Nasman, qui comprend l'ERB en plus d'Ubuntu 13. Est-ce que la structure de partitions présentée ci-dessous fonctionnerait, fût-ce au prix du sacrifice de la première partition Linux ? Y a-t-il d'autres structures possibles (d'après l'écran « Quick Search » TestDisk, pas vraiment car récupérer la partition commençant à 51954 me contraint à abandonner la plupart des autres) ? Y a-t-il une autre manière de procéder avec TestDisk ?

TestDisk 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sda - 750 GB / 698 GiB - CHS 91201 255 63
     Partition               Start        End    Size in sectors
 P FAT32 LBA                0  32 33  3263 170 43   52428800 [RECOVERY]
 * HPFS - NTFS           3263 170 44 39744  19 19  586057728 [OS]
 P HPFS - NTFS          39744  19 20 51954 209 31  196165632 [DATA]
>  Linux                51954 209 32 70244 108  8  293822464
 L Linux                70244 108  9 90445 190 49  324534272
 L Linux Swap           90446 195 54 91201  52 51   12120064

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 continueubuntu@ubuntu:~$ 
ext4 blocksize=4096 Large file Sparse superblock, 150 GB / 140 GiB

Malbo,

Si j'ai bien compris ton propos et ce que j'ai lu sur ce forum et sur d'autres, Windows 10 installerait une nouvelle partition Sda3, juste après la partition principale Windows (sda2). Mes partitions Linux auraient été, sur le disque, situées avant Sda5 (dévolu au Swap Linux) mais cependant, les identifiants numériques assignés aux deux partitions Linux étaient supérieurs à 5 et par conséquent, lors de sa réécriture de la table de partition, Windows 10 les aurait ignorées ? Y aurait-il un moyen autre que Testdisk pour résoudre cela ?

Je pense que Nasman t'aurais proposé de sauver la table de partition quoique  comme elle est nase!!!!

Puis il t'aurait donné le contenu hexadécimal à introduire.

Mais testdisk peut aussi le faire.
  Avec l'option A,   Tu vas pouvoir créer toutes les partitions primaires que nasman t'a indiquées.
        Ne te préoccupes pas de savoir si c'est une partition étendue ou logique , définis toutes tes partitions en primaire.
     Testdisk va s'apercevoir que le nombre est supérieur à 4 et il fabriquera par lui-même la partition étendue.
Mais il y a un HIC
         Tu as actuellement  des adresses logiques début et fin de partition.  Mais testdisk les veut sous forme CHS
                  et je ne retrouve plus mon formulaire de conversion.....
   Le principe est de demander la création de la partition
          de demander le Cylindre début
                de demander la tête début
                     de demander le secteur début
                                     de demander le Cylindre fin
                                          de demander la tête fin
                                               de demander le secteur fin
                                                     de demander le type de partition
    pour chaque partition et d'écrire la nouvelle table de partition.
donc  attendre que nasman se manifeste.

Dernière modification par Bougron (Le 18/10/2015, à 13:17)

Hors ligne

#14 Le 18/10/2015, à 14:46

Nasman

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Je n'ai pas trop de temps ces jours ci mais je verrais des choses à tester :
- modifier le premier ebr pour que la 1ère partition logique (la première entrée de l'ebr) pointe sur la deuxième partition Linux)
- indiquer un emplacement pour un deuxième ebr (2ème entrée du 1er ebr) de façon à pouvoir avoir d'autres partition logiques.

comme les partitions linux se suivent sans espace (d'après testdisk) il faut trouver un espace pour ce deuxième ebr - par exemple l'espace des 16384 secteurs. On pourrait indiquer cette zone pour l'emplacement de l'ebr2 et dans ce dernier mettre une entrée pour la partition de swap.

Dans le principe il faudrait :
- sauvegarder sur support externe le premier ebr, la zone des 16384 secteurs (un secteur devrait suffire) puis avec un éditeur hexa (ghex) modifier le 1er ebr pour avoir :
une entrée vers la deuxième partition Linux
une entrée vers le deuxième ebr

recréer le deuxième ebr pour indiquer une entrée vers la partition de swap


Réimplanter ces ebr modifiés et espérer pouvoir récupérer les données depuis un "Live" - Avec un peu de chance la partition Linux devrait être lisible.
Remettre grub comme il faut pour que le système Linux puisse refonctionner - Si pas possible, réinstaller.

il faut dire que des ebr placés à des endroits inhabituels, ça fait désordre

Edit : Les tables de partition ont la structure suivante :
1 octet de boot (80) ou pas (00)
3 octets (début partition dans le système tête secteur cylindre)
1 octet id système de fichiers
3 octets (fin partition dans le système tête secteur cylindre)
4 octets LBA début partition en hexa et little endian
4 octets taille partition (en secteurs) en hexa et little endian
soient 16 octets par partition
Voir doc sur mbr et ebr

Dernière modification par Nasman (Le 18/10/2015, à 14:54)


PC fixe sous Bionic 64 bits et portable avec Focal 64 bits

Hors ligne

#15 Le 18/10/2015, à 15:34

greg714598

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Bonjour Nasman,


Merci pour ces indications. Je comprends à peu près la logique mais je ne sais pas comment modifier un EBR pour qu’il puisse se référer à telle à telle partition, ni comment indiquer un emplacement pour un nouvel EBR. Dois-je utiliser un éditeur hexadécimal pour faire tout ceci puis utiliser Testdisk (via son option « Add partition » ?) pour charger les EBR ainsi modifiés ou créés ?

Je vais essayer de me renseigner sur la question entretemps.

Par contre, je ne comprends pas l’allusion à la lisibilité des partitions Linux. Cette question se posera-t-elle après la modification des EBR ? Car, aujourd’hui, les partitions Linux sont d’ores et déjà lisibles via Testdisk.

Dernière modification par greg714598 (Le 18/10/2015, à 15:35)

Hors ligne

#16 Le 18/10/2015, à 19:36

Bougron

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Bonjour
Si tu es d'accord, je te propose de faire les corrections de  la table de partition  via testdisk car je ne sais pas faire en valeur hexadécimale

Tout d'abord, tu as intérêt à  t'entraîner un peu pour comprendre le mécanisme de saisie des valeurs.
C'est ce que je viens de faire en sacrifiant une clé USB.
J'ai réussi à introduire  des valeurs fictives  que voila:

TestDisk 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdc - 8015 MB / 7644 MiB - CHS 1022 247 62

     Partition                  Start        End    Size in sectors

 1 E extended                 0   1  1   500 246 62    7672252
 5 L FAT32                    0   1  2     1   2  3      15378
 6 L HPFS - NTFS              2   3  4     3   4  5      15378
 7 L HPFS - NTFS             10  11 12    11  12 13      15378
 8 L Linux                  100   1  2   102   3  4      30755
 9 L Linux                  300   1  2   500   5  6    3063053

 [  Quit  ] >[Deeper Search]  [ Write  ]  [Extd Part]
                          Try to find more partitions

Il ne me reste plus qu'a forcer  l'écriture pour valider. C'est une chose que je connais bien.
Cela va donner ceci
Write partition table, confirm ? (Y/N)

puis cela
You will have to reboot for the change to take effect.

Au final, j'ai un peu n'importe quoi. Ce qui n'est pas surprenant.

Disk /dev/sdc - 8015 MB / 7644 MiB - CHS 1022 247 62
Current partition structure:
     Partition                  Start        End    Size in sectors

 1 E extended                 0   1  1   500 246 62    7672252
No partition is bootable
Invalid FAT boot sector
 5 L FAT32                    0   1  2     1   2  3      15378
 5 L FAT32                    0   1  2     1   2  3      15378
   X extended                 2   2  1     3   4  5      15443
Invalid NTFS or EXFAT boot
 6 L HPFS - NTFS              2   3  4     3   4  5      15378
 6 L HPFS - NTFS              2   3  4     3   4  5      15378
   X extended                10  10  1    11  12 13      15451
Invalid NTFS or EXFAT boot
 7 L HPFS - NTFS             10  11 12    11  12 13      15378
 7 L HPFS - NTFS             10  11 12    11  12 13      15378
   X extended               100   0  1   102   3  4      30818
No ext2, JFS, Reiser, cramfs or XFS marker
 8 L Linux                  100   1  2   102   3  4      30755
 8 L Linux                  100   1  2   102   3  4      30755
   X extended               300   0  1   500   5  6    3063116
No ext2, JFS, Reiser, cramfs or XFS marker
 9 L Linux                  300   1  2   500   5  6    3063053
 9 L Linux                  300   1  2   500   5  6    3063053

>[Quick Search]  [ Backup ]

Cela va te permettre de commencer l'apprentissage de la saisie de valeurs fictives. sauf si tu souhaites passer outre!

La première des choses à faire va être de sauver les trois secteurs que Nasman a identifié.

sudo dd if=/dev/sda bs=512 count=1 skip=834654206  of=/home/$USER/sav1
sudo dd if=/dev/sda bs=512 count=10 skip=834654208 of=/home/$USER/sav2
sudo dd if=/dev/sda bs=512 count=10 skip=1128476672 of=/home/$USER/sav3

Maintenant on va remettre à zéro la table de partition de format intel par testdisk. La commande est visible dans cet écran.
>[ Analyse  ] Analyse current partition structure and search for lost partitions
[ Advanced ] Filesystem Utils
[ Geometry ] Change disk geometry
[ Options  ] Modify options
[ MBR Code ] Write TestDisk MBR code to first sector
[ Delete   ] Delete all data in the partition table
[ Quit     ] Return to disk selection

Il faut valider cette modification mais  il n'est pas utile de booter pour prendre en compte cette remise à zéro.

Maintenant c'est la commande A de cette sous-grille qui va permettre d'introduire les caractéristiques de chaque partition.
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,
     Enter: to continue

On doit saisir le cylindre début, la tête début, le secteur début, idem pour la fin ainsi que le type de partition. Pour introduire une valeur , il faut d'abord sélectioner la nature de cette donnée, à l'aide de la sous-grille suivante.

>[Cylinder]  [  Head  ]  [ Sector ]  [Cylinder]  [  Head  ]  [ Sector ]
 [  Type  ]  [  Done  ]

Si on fait une faute de frappe, on peut de nouveau saisir la bonne valeur en recommençant la saisie de la rubrique tant que la partition n'a pas été validée par l'appui sur la commande Done
A  l'issue de la saisie des 5 partitions, si on constate qu'une erreur a été faite, je n'ai trouvé que la solution de recommencer la saisie.
Si après validation et écriture, on constate que c'est faux, on peut recommencer le processus en remettant de nouveau la table de partition à zéro.

Dernière modification par Bougron (Le 19/10/2015, à 19:09)

Hors ligne

#17 Le 18/10/2015, à 23:14

Bougron

Re : [Résolu] Table des partitions endommagée par Windows Recovery

voici les valeurs à introduire

                        LBR           Cylindre      tête    secteur    LBR             Cylindre  tete    secteur        code partition
FAT32              2048                    0            8         8            52430847         3263     42            42            0b
NTFS       52430848              3263         42         43          638488575     39744        4          195            07
NTFS     638488576             39744          4       196          834653351     51954       48         101            07
Linux      834654208             51954        51       193        1128476671     70244       26         181            83
Linux    1128476672             70244        26       182        1453010943     90445       47           33            83

Hors ligne

#18 Le 19/10/2015, à 17:58

greg714598

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Bonjour Bougron,

Je te remercie pour ces précieuses informations. Je vais donc m’essayer à l’art de la réécriture de partitions… Mais avant cela, n’étant familier du sujet que depuis quelques jours, j’ai quelques questions.

La première concerne la mesure dans laquelle je peux me permettre d’expérimenter la réécriture de partitions en utilisant, pour cobaye, mon propre disque dur. Quelle que soit la manière dont je réécris la partition (même de la manière la plus absurde et la plus incohérente), n’y a-t-il aucun risque ? Est-ce que le Live CD et Testdisk joueront toujours un rôle de filet de sécurité ? Les données aujourd’hui ne seront-elles jamais altérées ?

Autrement dit, est-ce que je suis sûr de toujours pouvoir ré-accéder à TestDisk grâce au  Live CD d’Ubuntu, même avec une table des partitions complètement erronée ? Dans un tel cas de figure, tout ce que j’aurai à faire pour repartir sur des bases un peu plus saines consistera-t-il seulement à recharger, dans Testdisk, le fichier backup créé avec Testdisk? Par fichier de backup, j’entends le fichier « backup.log » de 300 octets.

Mes deux autres questions concernent ton tableau. Ce tableau ne mentionne pas la partition Swap Linux, est-ce normal ?

Par ailleurs, Nasman, avec son approche « hexadécimale » évoquait la nécessité de modifier et de réimplanter les EBR pour chaque partition Linux. Dans ton approche qui utilise Testdisk, il n’est pas question d’EBR. Est-ce parce que Testdisk se chargera de les générer lui-même et de manière automatique ?

Hors ligne

#19 Le 19/10/2015, à 19:33

Bougron

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Bonjour
Sur ta première question, Tu as raison d'être inquiet.
Habituellement, lorsqu'on utilise testdisk, on demande toujours de dupliquer le disque avant de faire la manipulation.
        Lorsque le disque est dupliqué, on peut faire n'importe quoi.
Lorsqu'on va travailler avec la ré-écriture des partitions, testdisk va écrire sur le disque pas mal de choses.
            1) La table de partition  du tout début du disque.
            2) Et dans chaque partition, Ce qui est nécessaire  pour la gérer.
J'ai vu que normalement Nasman t'as fait vider trois zones.
    C'est la table MBR et certainement les deux tables des partitions  mais probablement pas les tables des partitions WINDOWS.
Dans un premier temps, cela serait bien de conserver les 3 sauvetages prévus par Nasman en secours. Je t'ai donné les trois commandes à faire.
  Je viens de supprimer l'idée de remettre entièrement à zéro la table de partition en passant directement aux modifications des valeurs des partitions.
Je viens de vérifier que l'ajout est possible. La structure est modifiée en conséquence.

Je n'ai pas trop compris pourquoi les trois premières partitions ne sont  identiques entre le calcul issu des valeurs LBA de  Nasman et ce que testdisk  a trouvé.
    Ajout   Erreur de Nasmam? Erreur dans la formule ?   Erreur de testedisk? Situation possible ?

Je pense que normalement tu utilises testdisk en session live.
Ce tesdisk pourra modifier n'importe quoi sur le disque dur tant qu'il ne sera pas HS.
Tu peux donc introduire les valeurs.    Si tu te rends compte que tu as fais d'énormes fautes de saisies, tu ne valides pas (Commande Write).
Si on se rend compte plus tard qu'il y a un petit décalage, on relance le processus d'ajout de partition.
Si rien ne marche, en désespoir, on pourra même mettre les valeurs proposées par testdisk. ou tout simplement commencer par mettre celles de tesdisk et si cela ne marche pas, mettre celles que je viens de calculer. Ce qui me semble une opération plus facile.

Volontairement, Je ne traite pas la partition swap dans laquelle tu n'as aucune données personnelles.
                         Lorsque l'ordinateur refonctionnera, Gparted pourra fabriquer une partition swap  qu'on mettra dans /etc/fstab.

Testdisk va gérer les partitions logiques, la partition étendue (c'est ce qui s'appelle l'EBR).
                Lorsqu'il détecte qu'il y a moins de 5 partitions, il ne fabrique pas d'EBR.
                Ici on en aura 5 donc il va fabriquer un EBR, Je ne sais absolument pas s'il le mettra exactement à la place du EBR actuel.

J'aurais aimé fournir le document  libreoffice calc qui a permit le calcul. Mais pour le moment le serveur que j'utilise ne répond pas. Peut-être a -t-il fermé? car il y a plusieurs mois que je ne l'ai pas utilisé.

Dernière modification par Bougron (Le 20/10/2015, à 09:58)

Hors ligne

#20 Le 20/10/2015, à 12:38

Nasman

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Je suis ce fil - rapidement - ayant du taf.

Attention lors du calcul des valeurs à introduire selon la méthode utilisée.

1) Le calcul LBA vers HSC (tête secteur cylindre) est le suivant
C=ent(LBA/16065)
H=ent((LBA-16065C)/63)
S=LBA-16065*C-63H +1
Les têtes varient entre 0 et 254 (total 255 têtes)
Les secteurs varient entre 1 et 63 (total 63 secteurs par piste)
Ce sont les valeurs données par testdisk

Le calcul inverse est le suivant
LBA=16065*C+63*H+S -1

Attention au codage des valeurs dans le mbr et ebr
Les valeurs sont codées pour les "HSC" de la façon suivante :
premier octet : valeur hexa de la tête (comprise entre 0 et 0xFE)
deuxième octet : bits 6 et 7 = bits 8 et 9 de la valeur de cylindre, bit 0 à 5 = secteur (les cylindres sont limités à une valeur de 1023)
troisième octet : bits 0 à 7 de la valeur du cylindre
ce mode est limité à C<=1023, H<=254 S<=63

Les valeurs de LBA sont codées en hexa little endian.

Nota : un début de partition à la LBA 2048 sera codé 0x20 0x21 0 (tête=32, secteur=33, cylindre 0) en mode HSC et 0x08 0 0 0 en mode LBA


PC fixe sous Bionic 64 bits et portable avec Focal 64 bits

Hors ligne

#21 Le 20/10/2015, à 13:32

Bougron

Re : [Résolu] Table des partitions endommagée par Windows Recovery

J'ai raté le +1 ou le -1 dans la formule
Il faudra donc ajouter 1 aux secteurs indiqués.

Dernière modification par Bougron (Le 20/10/2015, à 13:43)

Hors ligne

#22 Le 20/10/2015, à 22:16

greg714598

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Bonsoir Bougron,

Le pire des risques possibles porte-t-il seulement sur l’intégrité des données (dont j’ai déjà sauvegardé l’essentiel) ou porte-t-il sur le bon fonctionnement du disque dur ? Autrement dit, une mauvaise table des partitions pourrait-elle aller jusqu’à endommager de manière irrémédiable le disque lui-même ?

J’avais vu cette possibilité qu’offre Testdisk de laisser inchangées les valeurs des partitions existantes et de se contenter d’ajouter les partitions « perdues ». Cette approche devrait, même dans le pire des cas, préserver les partitions qui sont déjà correctement référencées.

Avec une telle approche – si je l’ai bien comprise –, je n’aurais donc plus à prendre en compte les valeurs des trois premières lignes de ton tableau (puisque je me contenterai de n’ajouter que les deux partitions Linux manquantes), j’avais cependant noté une anomalie : tu typais la première partition à 0b alors que Fdisk indiquait qu’elle était de type 1c. Est-ce normal ?

Quoi qu’il en soit, j’ai bien procédé aux trois sauvegardes que tu m’as demandé de réaliser : j’ai obtenu trois fichiers, le premier de 500 octets et les deux suivants de 5,1 ko chacun. Etant encore assez peu familier de Testdisk, peux-tu m’indiquer comment je pourrai utiliser ces trois fichiers de sauvegarde pour les restaurer en cas de besoin ?

Enfin, j’ai recalculé les valeurs CHS des deux partitions Linux manquantes en utilisant les formules de conversion LBA vers CHS. Je ne parviens pas aux mêmes résultats que toi. Sais-tu où se situe l’erreur ? Je me suis permis de présenter mes calculs et de les comparer avec ton tableau dans un tableur que j’ai rendu accessible ici


En tous les cas, merci à vous tous !

Hors ligne

#23 Le 20/10/2015, à 23:33

Bougron

Re : [Résolu] Table des partitions endommagée par Windows Recovery

greg714598 a écrit :

Bonsoir Bougron,
Le pire des risques possibles porte-t-il seulement sur l’intégrité des données (dont j’ai déjà sauvegardé l’essentiel) ou porte-t-il sur le bon fonctionnement du disque dur ? Autrement dit, une mauvaise table des partitions pourrait-elle aller jusqu’à endommager de manière irrémédiable le disque lui-même ?

Au pire cela se terminera par un formatage du disque et obligation de refabriquer les partitions et restaurer ce que tu a sauvé.
Mais avant ce formatage, on pourra supprimer par gparted quelques partitions et conserver celles qui sont bonnes (windows)
Donc le pire c'est réinstaller ubuntu si on ne sait pas rebâtir sa structure d'avant l'incident.

greg714598 a écrit :

J’avais vu cette possibilité qu’offre Testdisk de laisser inchangées les valeurs des partitions existantes et de se contenter d’ajouter les partitions « perdues ». Cette approche devrait, même dans le pire des cas, préserver les partitions qui sont déjà correctement référencées.
Avec une telle approche – si je l’ai bien comprise –, je n’aurais donc plus à prendre en compte les valeurs des trois premières lignes de ton tableau (puisque je me contenterai de n’ajouter que les deux partitions Linux manquantes), j’avais cependant noté une anomalie : tu typais la première partition à 0b alors que Fdisk indiquait qu’elle était de type 1c. Est-ce normal!

Oui l’idée est de considérer que les trois premières partitions sont restées bonnes.
Il restera deux partitions à fabriquer donc 14 valeurs à introduire.

J’avais typé la première partition en FAT32
Tu la types en FAT32 HIDDEN  LBA    Quelque soit cachée ou pas n’est pas très important.
        Pour la notion LBA je ne sais pas trop  ce que cela cache.   Gardes ton choix   

greg714598 a écrit :

Quoi qu’il en soit, j’ai bien procédé aux trois sauvegardes que tu m’as demandé de réaliser : j’ai obtenu trois fichiers, le premier de 500 octets et les deux suivants de 5,1 ko chacun. Etant encore assez peu familier de Testdisk, peux-tu m’indiquer comment je pourrai utiliser ces trois fichiers de sauvegarde pour les restaurer en cas de besoin ?

Sous réserve de vérification les commandes seraient

sudo dd if=/home/$USER/sav1 of=/dev/sda bs=512 count=1 skip=834654206 
sudo dd if=/home/$USER/sav2 of=/dev/sda bs=512 count=10 skip=834654208
sudo dd if=/home/$USER/sav3 of=/dev/sda bs=512 count=10 skip=1128476672

greg714598 a écrit :

Enfin, j’ai recalculé les valeurs CHS des deux partitions Linux manquantes en utilisant les formules de conversion LBA vers CHS. Je ne parviens pas aux mêmes résultats que toi. Sais-tu où se situe l’erreur ? Je me suis permis de présenter mes calculs et de les comparer avec ton tableau dans un tableur que j’ai rendu accessible ici

et tu as bien fait !!!
Voilà ce qui arrive lorsqu’on refait le tableau excel trop  vite et qu’on écrit
  Nbre de secteurs par tête       63
  Nbre de têtes par piste          255
En permutant les deux valeurs,  je trouve ton résultat.

Dernière modification par Bougron (Le 20/10/2015, à 23:35)

Hors ligne

#24 Le 21/10/2015, à 13:10

greg714598

Re : [Résolu] Table des partitions endommagée par Windows Recovery

A peu de chose près, la suggestion de liste de partitions donnée par Testdisk dans son écran « Quick Search » (lignes 27 à 32 du tableur) est assez similaire à celle que l’on obtient par nos calculs (lignes 45 à 50). Mais il y a une différence majeure : TestDisk considère dans son écran d’analyse que SDA3 termine au secteur 834653351 (cellule K21 du tableur) alors que ce même TestDisk considère, dans le cadre de sa Quick Search que ce même SDA3 termine au secteur 834654233 (cellule K29). J’ai tendance à croire que c’est la valeur donnée par le premier écran de Testdisk qui est correcte : la valeur de fin de SDA est très probablement 834653351 et non 834654233.

Quoi qu’il en soit, parce que l’écran Quick Search propose 834654233 comme fin de SDA3, c’est ce qui explique que paradoxalement TestDisk considère qu’il y a une « mauvaise structure » lorsque j’essaye d’activer, dans l’écran « Quick Search », la première partition Linux. En effet, Testdisk, dans le cadre de cette Quick Search, me propose de faire terminer SDA3 au secteur 834654233 mais paradoxalement, en même temps, il me propose de faire débuter la première partition Linux en 834654208 (cellule G30). Autrement dit, TestDisk me propose une structure qui ne peut être que mauvaise : SDA3 empiète sur la première partition Linux.

Par conséquent, je ne peux pas reprendre telles quelles les valeurs de la SDA3 que me propose le module « Quick Search » de Testdisk : en plus des deux partitions Linux, il me faut aussi ressaisir dans cet écran les valeurs de SDA3. Ce qui est étrange, c’est que le premier écran de Testdisk (l’analyse) donne lui la valeur correcte.

Quoi qu’il en soit, parce que l’écran « Quick Search » ne me permet pas de supprimer juste une partition et de laisser les autres inchangées, je me vois donc contraint finalement d’effacer toute la table de partition pour la réécrire totalement.

Cela m’amène à une question de méthode : lorsque l’on choisit l’option de suppression de la table de partitions, est-ce que cette suppression prend immédiatement effet ou est-ce qu’elle ne prend effet que lorsque qu’on choisit l’option « Write » dans l’écran « Quick Search » ? Dans le deuxième cas, demander que la table soit supprimée sans que cela prenne effet immédiatement me permettrait juste de tester diverses possibilités de table de partitiosn mais tout en préservant l’ancienne structure afin de minimiser les risques.

Hors ligne

#25 Le 21/10/2015, à 19:10

Bougron

Re : [Résolu] Table des partitions endommagée par Windows Recovery

Tant que le write n'est pas fait, cela reste en mémoire.
Lorsque le write est fait, il faudra booter pour que l'OS prenne en compte les modifications faites.

Quelles sont les vraies bonnes valeurs?...  Regardes ce que Nasman propose

Mais tu devrais pouvoir laisser une partition  'BIDON' et te contenter de mettre ce qui est bon
Ultérieurement  la partition BIDON sera à supprimer par Gparted.

Dernière modification par Bougron (Le 21/10/2015, à 22:49)

Hors ligne