[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Récupérer une table de partition GUID



Hugues LARRIVE a écrit :
> Vincent DUVERT a écrit :
>> Je voulais repartitionner une clé USB sur mon Mac Intel (en étant sous
>> Debian Testing). Sauf que j'avais oublié que contrairement à mon PC
>> portable, le disque dur était en SATA et que /dev/sda n'était pas la
>> clé USB mais... le disque !
>> Résultat, j'ai remplacé ma table de partitions (sur ces nouveaux Macs,
>> c'est plus un partitionnement "Mac", mais un partitionnement GUID) par
>> une table de partitions PC. Et bien évidemment, il n'y a plus rien qui
>> marche.
>> J'ai éteint aussitôt le Mac (j'avais peur que ça commence à écrire des
>> trucs partout).
> 
> Mauvais réflex! Comme tu le sais surement, en général un reboot est
> necessaire après une modification du partitionnement, pour que le noyau
> charge et utilise la nouvelle table de partition. Ce qui signifie que
> tant que tu n'éteins pas ou que tu ne reboot pas, il continue d'utiliser
> l'ancienne qui est stockée quelque part (au hasard /proc/partitions) et
> il n'y a pas de risque particulier pour les données donc tu as le temps
> de réfléchir, rechercher, prendre un shoot de /proc et le sauvegarder
> sur un support amovible ( ça peu servir par la suite ) ainsi que les
> données utilisateurs les plus précieuses.

J'essaierai d'y penser la prochaine fois ;-)

> 
>> Je peux accéder au disque dur interne par FireWire, par contre je ne
>> peux pas en faire une image (pas de disque dur assez grand et assez
>> vide).
> 
> Ca ça dépend de la valeur que tu accordes aux données présentes sur le
> disque (documents t'aillant demandé des dizaines d'heures de boulot,
> photos numériques, etc. Essai de te faire prêter un disque assez grand,
> ou achètes en un, au pire tu peux toujours aller en acheter un dans une
> grande surface, le déballer proprement, résoudre rapidement ton
> problème, l'effacer proprement (genre dd if=/dev/zero
> of=/dev/le_disque_a_effacer), et demander à te le faire rembourser sous
> prétexte que ton vieux celeron 1200 ne gère pas le LBA32 et qu'il ne
> supporte donc pas les DD de plus de 130Go... au hasard Au.han rembourse
> sans trop de difficultés et en espèce ;)
> Dans tous les cas il vaut mieux faire une sauvegarde avant d'envisager
> toute modification.
> Tu peux la compresser avec gzip pour diminuer de moitié l'espace
> nécessaire, par exemple si le disque endommagé est /dev/sda, le disque
> de sauvegarde est monté sur /mnt/backup :
> dd if=/dev/sda ¦ gzip -9 ¦ dd of=/mnt/backup/backup.gz

Finalement, j'ai réussi à en faire une sauvegarde, mais c'est passé
juste (le disque de secours faisait à peu près 68 Go, le système dessus
(Mac OS X) 5 Go, et le disque à recopier un peu moins de 60 Go.

>> Y a-t-il des utilitaires permettant de retrouver la table des
>> partitions ? J'ai testé testdisk, mais il ne fonctionne pas avec le
>> schéma de partition GUID...
> 
> Ca me surprend un peu que testdisk ne connaisse pas les partitions guid
> mais juste un peu, il faudrait voir avec la dernière version...

J'ai vérifié. Dans les "current limitations :"
GUID Partition Table (GPT) can be up to 18 exabytes (Not yet supported
by TestDisk).

> Sinon il y a GNU parted, le plus universel / puissant / dangereux /
> difficile à utiliser que je connaisse... lui je suis sure qu'il connait
> les partitions guid et il y a une commande rescue qui cherche les
> partitions effacées...
> Je te conseil vivement de faire une sauvegarde avant toute tentative et
> puis rtfm !

MIRACLE ! Ca a marché tout seul !
Apparemment, le format de partition GUID laisse de l'espace au début du
disque pour faire croire les vieux systèmes qu'il s'agit d'une partition
DOS non compatible. La vraie table des partitions n'a pas été affectée !

J'ai lancé Parted, j'ai demandé un affichage des partitions, et il m'a
dit : Il semble qu'il y ait une table des partitions GUID, et que la
fausse table DOS soit corrompue. Faut il utiliser les partitions GUID ?
(ou un truc dans le genre)
J'ai évidemment répondu Yes, et il m'a affiché la table des partitions
originales !
J'ai alors fait semblant de renommer une partition pour le forcer à
réécrire la table DOS de manière correcte. (d'ailleurs c'est vraiment
pas sécurisé ce truc, il fait toutes les modifications en direct)
Je débranche le câble FW, je redémarre... Victoire !

Bon, victoire non complète, mais c'est déjà pas mal. En fait, la fausse
table DOS créée par Mac OS X est légèrement particulière : elle contient
les premières partitions GUID, ce qui permet d'utiliser Window$ sur un
système GUID.
Mais comme j'ai vraiment rien fait d'intéressant sous Win, je m'en fiche
un peu ;-)

Vincent
PS : Merci !

PS2 : Au fait, pourquoi fdisk n'affiche pas un avertissement quand on
repartitionne un disque avec des partitions montées ?



Reply to: