Vous n'êtes pas identifié(e).
avec 100000=110001-10001.
Je pose la question qui parait triviale, mais je m'y perds entre décomptes en GiO et GO. Je comprends que dd compte en mebi-octets (1024x1024 octets) et gibi-octets (1024x1024x1024), mais que le disque a été partitionné en giga-octets (1000x1000x1000). J'ai bon ?
Pour la partition 3, voici ce que renvoie hdparm :
Entre CBS / LBA et LBA48 addressable sectors, quel est la bonne valeur ? Et de quelle taille de secteur parle-ton ? logique ou physique ?
Le LBA adressable sectors et des secteurs de 4096 octets me donne la valeur la plus proche, mais je ne tombe pas pile sur la taille du disque renvoyée par hdparm :
268 435 455 * 512 / 1024 / 1024 = 1 048 575,99 MiO
Hors ligne
Je n'ai pas encore lancé les commandes que tu m'as données, je ne les connais pas et je veux pas écrire sur le disque
man est ton ami. Ces commandes n'écrivent rien sur le disque et je ne vois pas comment tu pourrais te tromper en les tapant et écrire sur le disque. Même si tu intervertis if= et of= dans la première méthode, il faudrait en plus que le fichier source spécifié par if= existe et ne soit pas vide, ce qui n'est normalement pas le cas puisque le but est de créer ce fichier). Si tu as quand même peur, utilise une des deux autres méthodes qui n'écrivent rien du tout.
Arrête de te prendre la tête, tu as plus de chances de te tromper dans tes calculs pour sauvegarder la partition. Si tu veux faire une sauvegarde fiable, fais-en une du disque entier.
Dernière modification par raleur (09-01-2021 10:03:23)
Il vaut mieux montrer que raconter.
Hors ligne
Apparemment, je ne trouve pas le début de la partition.
Dernière modification par phux (09-01-2021 11:06:49)
Hors ligne
Dernière modification par raleur (09-01-2021 12:13:43)
Il vaut mieux montrer que raconter.
Hors ligne
La taille de ma première partition ext4 est de 204800000 secteurs (25600000*4096/512). Je retrouve bien les 100 Go de mon partitionnement initial.
Si je fais la même chose pour la troisième partition (seconde partition ext4) :
Seconde partition ext4 : 1 728 241 664 secteurs ou 843868 Mio.
Je viens de reprendre la première méthode avec dd et count=64, voici le résultat :
Le block count est cohérent avec les deux autres méthodes.
Et maintenant ?
Dernière modification par phux (09-01-2021 12:32:53)
Hors ligne
Hors ligne
Dans la commande dd, il y a deux count, un avant skip, l'autre après. Je ne comprends pas pourquoi. Lequel dois-je augmenter ?
Voir l'édition de mon message précédent.
mon disque fait 1 To, mon disque sauvegarde aussi. Si je fais une copie intégrale de sdb sur un fichier image, je vais manquer de place à cause du partitionnement de mon disque de sauvegarde, non ?
Et même en écrasant sa partition, il est un peu plus petit.
La 2e partition finit au secteur 110001*2048+216030208*4096/512-1 = 1953523711 donc l'autre disque est effectivement trop petit.
La première partition commence au secteur 10001*2048 = 20482048 et finit au secteur 10001*2048+25600000*4096/512-1 = 225282047 donc juste avant le début de la seconde (110001*2048 = 225282048), ce qui est cohérent.
Si les données utiles n'occupent pas 1 To, tu peux recréer les partitions virtuellement avec addpart, les monter et recopier les données sur l'autre disque.
(Si tu avais utilisé addpart précédemment, il faut préalablement supprimer les partitions avec les commandes delpart que j'avais indiquées.)
Tu as tous les éléments pour recréer une table de partition. Il reste suffisamment d'espace à la fin du disque après la fin de la seconde partition pour créer une table de partition de type GPT qui écrit une copie de la table à la fin du disque. Si tu optes pour une table de partition DOS/MBR traditionnelle, crée seulement des partitions primaires et surtout pas de partition étendue/logique, cela pourrait écraser le début des partitions. Il ne faut pas effacer les données lors de la création des partitions, donc je me méfierais de Gparted. fdisk propose d'effacer les signatures, il faut lui répondre de les conserver.
Dernière modification par raleur (09-01-2021 13:00:59)
Il vaut mieux montrer que raconter.
Hors ligne
Apparemment, le disque était bien partitionné en GPT. Je comprends qu'il charge la table backup, mais que les CRC ne sont pas bons, et qu'il faut que je répare le disque. Avant d'écrire sur le disque, peux-tu me confirmer que c'est bien la séquence r (restore) c (load backup partition table) ?
Hors ligne
Apparemment, le disque était bien partitionné en GPT.
Et on s'est fait suer pour rien. J'avais pourtant écrit dans mon premier message :
Note : si la table de partition est au format GPT, il y a une table de secours à la fin du disque, que des outils comme gdisk peuvent utiliser pour restaurer la table principale.
Mais apparemment c'est passé inaperçu. Au moins on peut vérifier que nos calculs étaient exacts.
Je comprends qu'il charge la table backup, mais que les CRC ne sont pas bons, et qu'il faut que je répare le disque.
Ce sont les CRC de l'en-tête et la table principaux situés au début du disque qui sont incohérents. L'en-tête et la table de sauvegarde situés à la fin du disque sont intacts, et gdisk a pu retrouver les partitions grâce à eux.
Avant d'écrire sur le disque, peux-tu me confirmer que c'est bien la séquence r (restore) c (load backup partition table) ?
A mon avis pas besoin de s'embêter avec ça. Si la commande "p" affiche les bonnes partitions, alors il devrait suffire d'enregistrer avec "w".
Vérifie quand même que le MBR est bien de type MBR protecteur. Sinon il faudra passer par les fonctions expert avec "x" pour le reconstruire avec "n".
Dernière modification par raleur (09-01-2021 19:37:05)
Il vaut mieux montrer que raconter.
Hors ligne
Et on s'est fait suer pour rien.
Mais non : on a appris des trucs avec ta méthode, ta rigueur et ta précision.
Maintenant, quand je lis ça,
GPT c'est bon, mangez-en.
j'aimerais bien en savoir un peu plus, en quelques phrases.
J'avoue humblement ne m'être jamais penché sur le sujet, mais on dirait que c'est peut-être le moment (la récup avec gdisk m'a bluffé).
Merci,
AMD Ryzen3 3200G sur Gigabyte B450M & Make Love Not War
Hors ligne
Et on s'est fait suer pour rien. J'avais pourtant écrit dans mon premier message :
Oui raleur, j'en suis bien conscient. Faute de savoir ce que faisait gdisk, et en particulier qu'il me permettait de savoir si la partition était en gpt, j'ai commencé avec le premier indiqué. Comment perdre des heures quand la solution est là, sous mon nez !
Mais tu m'a appris plein de trucs (les outils disque gpart, losetup, tune2fs, les paramètres de dd que je ne connaissais pas), et surtout, ce que je pressentais sans avoir eu vraiment la preuve, qu'un système ouvert et l'entraide sont les outils les plus puissants qui existent. Alors désolé de t'avoir fait perdre ton temps, désolé pour mes questions à la noix sur détail de la vis de 6, et encore un immense merci pour ta patience et ton aide.
A ce sujet, j'aimerais bien savoir comment tu as acquis une telle expertise sur les systèmes de fichiers, le matériel, et les outils linux. Ca fait un bout de temps que je tripote linux, mais à part une utilisation basique de dd, je n'avais jamais entendu parler de toutes ces commandes.
Vérifie quand même que le MBR est bien de type MBR protecteur. Sinon il faudra passer par les fonctions expert avec "x" pour le reconstruire avec "n".
Euh, comment je vérifie ça ? Voici ce que donne 'print protective MBR data' en mode expert :
Hors ligne
Il vaut mieux montrer que raconter.
Hors ligne
désolé de t'avoir fait perdre ton temps
Ce n'est pas moi qui ai perdu du temps. Je fais ça comme passe-temps.
comment tu as acquis une telle expertise sur les systèmes de fichiers, le matériel, et les outils linux
Des heures d'expérimentation, de lecture de la documentation et des forums. Et on n'imagine pas tout ce qu'on peut apprendre en essayant de résoudre problèmes des autres.
Voici ce que donne 'print protective MBR data'
Alors c'est bon.
Il vaut mieux montrer que raconter.
Hors ligne
Dernière modification par phux (09-01-2021 22:07:03)
Hors ligne
(la récup avec gdisk m'a bluffé).
Moi aussi. Tout le début du disque était écrasé à coup de zéros, et si j'avais démarré par gdisk, je récupérais tout en deux minutes chrono.
En plus, gdisk permet de faire une sauvegarde de la table en plus du backup. Ce que je viens de faire pour mes deux disques qui par chance sont tous deux en GPT.
Seul bémol, les disques boot pour lesquels il semble y avoir des problèmes (mais rien de tel pour mon ssd en mode uefi).
Hors ligne
- comment forcer un formatage ou un partitionnement en GPT
Il faut utiliser un programme de partitionnement compatible GPT et demander la création d'une table de partition (on dit aussi "disk label") de type GPT. Bien sûr cela écrase la table de partition existante et supprime les partitions présentes.
gdisk peut aussi convertir une table de partition DOS au format GPT sans supprimer les partitions existantes, si leur position le permet (il doit y avoir suffisamment d'espace non alloué au début et à la fin du disque pour les tables de partition principale et de secours). Si le disque est utilisé pour l'amorçage BIOS, il pourra être nécessaire de réinstaller le chargeur d'amorçage. Avec GRUB, il faudra créer une partition de type BIOS boot (non formatée, taille 100 ko minimum) et réinstaller GRUB dont une partie a été écrasée par la table de partition GPT. Avec certains BIOS, il faudra aussi activer le drapeau "boot" sur la partition GPT du MBR protecteur avec fdisk ou parted, je ne pense pas que gdisk permette de le faire. Si le disque est utilisé pour l'amorçage UEFI (ce qui devrait être rare, le format GPT étant utilisé par défaut ou obligatoirement avec ce mode d'amorçage), il pourra être nécessaire de réenregistrer GRUB dans les variables de boot EFI avec efibootmgr ou réinstaller GRUB avec grub-install.
Pour mon disque, est-ce que s'était déjà préformaté ou est-ce ça s'est fait tout seul lorsque j'ai créé les partitions avec gparted
Si le disque avait déjà une table de partition, alors Gparted a dû la conserver, à moins que tu aies demandé la création d'une nouvelle table.
- Si je n'avais pas retrouvé les partitions avec gdisk, comment est-ce que j'aurais recréé la table à partir des adresses des secteurs ? Avec fdisk, sfdisk ? Et quels paramètres ?
Avec fdisk, sfdisk, gdisk, parted... tu as le choix. Selon le programme pour chaque partition il faut indiquer la position de début et la position de fin ou la taille.
Seul bémol, les disques boot pour lesquels il semble y avoir des problèmes (mais rien de tel pour mon ssd en mode uefi).
Les seuls problèmes que je connais pour l'amorçage BIOS sont la possible nécessité de créer une partition BIOS boot pour GRUB et d'activer le drapeau "boot" de la partition GPT du MBR protecteur comme expliqué plus haut.
Il vaut mieux montrer que raconter.
Hors ligne