Disque dur externe ne monte plus après connexion à Windows

Je m'y attendais...

Passe encore la commande :
Bloc de code:
diskutil verifyDisk disk2

  • qui vérifie la table GPT du disque

Poste l'affichage retourné.
Bloc de code:
Started partition map verification on disk2
Checking prerequisites
Checking the partition list
Checking the partition map size
Checking for an EFI system partition
Checking the EFI system partition's size
Checking the EFI system partition's file system
Checking the EFI system partition's folder content
Checking all HFS data partition loader spaces
Volume  on disk2s4 has 0 bytes of trailing loader space and it needs 134 217 728 bytes
Problems were found with the partition map which might prevent booting
Error: -69765: Partition map needs repair because a data partition needs loader space
 
Curieusement > c'est la partition disk2s4 qui est incriminée (une des partitions d'installateurs). Est-ce qu'on peut la reformater ?
 
Curieusement > c'est la partition disk2s4 qui est incriminée (une des partitions d'installateurs). Est-ce qu'on peut la reformater ?
J'ai utilisé la commande:
diskutil eraseVolume free null disk2s4
pour la reformater.

Lorsque je relance le verifyDisk, diskutil me dit que tout est OK avec le disque:
Bloc de code:
Started partition map verification on disk2
Checking prerequisites
Checking the partition list
Checking the partition map size
Checking for an EFI system partition
Checking the EFI system partition's size
Checking the EFI system partition's file system
Checking the EFI system partition's folder content
Checking all HFS data partition loader spaces
Checking booter partitions
Checking Core Storage Physical Volume partitions
The partition map appears to be OK
Finished partition map verification on disk2
 
Hé ! hé ! alors ...

... passe la commande :
Bloc de code:
sudo gpt show disk0

  • poste le tableau des blocs s'il est affiché...
 
Hé ! hé ! alors ...

... passe la commande :
Bloc de code:
sudo gpt show disk0

  • poste le tableau des blocs s'il est affiché...
disk2* :p
Bloc de code:
       start        size  index  contents
           0           1         PMBR
           1           1         Pri GPT header
           2          32         Pri GPT table
          34        2014        
        2048      409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
      411648  18446744073709549568      2  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
      409600    12847104        
    13256704    10590440      3  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
    23847144      262144        
    24109288  1460125576      4  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
  1484234864      264080        
  1484498944   155985920      5  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
  1640484864      262144        
  1640747008   214792192      6  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
  1855539200      262144        
  1855801344    97394532      7  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
  1953195876      262267        
  1953458143          32         Sec GPT table
  1953458175           1         Sec GPT header
 
Voici la partition bidon -->
Bloc de code:
      411648  18446744073709549568      2  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7

  • il est possible de la supprimer par une commande gpt > mais gpt ne peut écrire à la table GPT en mode "live" (des volumes correspondant aux descripteurs de la table montés sur leurs partitions). La condition est donc de démonter tous les volumes actuellement montés du disque.

=> est-ce que tu es prêt à cette opération > ou est-ce que tu n'as pas envie de démonter tes volumes de données ?
 
Voici la partition bidon -->
Bloc de code:
      411648  18446744073709549568      2  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7

  • il est possible de la supprimer par une commande gpt > mais gpt ne peut écrire à la table GPT en mode "live" (des volumes correspondant aux descripteurs de la table montés sur leurs partitions). La condition est donc de démonter tous les volumes actuellement montés du disque.

=> est-ce que tu es prêt à cette opération > ou est-ce que tu n'as pas envie de démonter tes volumes de données ?
Je suis prêt :)
 
Reposte le tableau d'un :
Bloc de code:
diskutil list

  • correspondant au disk2

que j'avise les volumes actuellement définis.
 
Reposte le tableau d'un :
Bloc de code:
diskutil list

  • correspondant au disk2

que j'avise les volumes actuellement définis.
Bloc de code:
/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk2
   1:                        EFI EFI                     209.7 MB   disk2s1
   2:       Microsoft Basic Data                         -1048576 B  disk2s2
   3:                  Apple_HFS                         5.4 GB     disk2s5
   4:                  Apple_HFS HDD externe             747.6 GB   disk2s6
   5:       Microsoft Basic Data                         79.9 GB    disk2s7
   6:       Microsoft Basic Data PS3BACKUP               110.0 GB   disk2s8
   7:       Microsoft Basic Data                         49.9 GB    disk2s9
 
Alors passe les commandes :
Bloc de code:
diskutil umount force disk2s6
diskutil umount force disk2s8
sudo gpt remove -i 2 /dev/disk2

  • les 2 premières démontent les 2 volumes
  • la 3è supprime la partition de rang n°2

Poste l'affichage retourné par la 3è.
 
Alors passe les commandes :
Bloc de code:
diskutil umount force disk2s6
diskutil umount force disk2s8
sudo gpt remove -i 2 /dev/disk2

  • les 2 premières démontent les 2 volumes
  • la 3è supprime la partition de rang n°2
Poste l'affichage retourné par la 3è.
Bloc de code:
MacBook-Pro-de-Steve:/ steve$ diskutil umount force disk2s6
Volume HDD externe on disk2s6 force-unmounted
MacBook-Pro-de-Steve:/ steve$ diskutil umount force disk2s8
Volume PS3BACKUP on disk2s8 force-unmounted
MacBook-Pro-de-Steve:/ steve$ sudo gpt remove -i 2 /dev/disk2
Password:
gpt remove: unable to open device '/dev/disk2': Resource busy
MacBook-Pro-de-Steve:/ steve$ diskutil umount force disk2s7
Volume (null) on disk2s7 force-unmounted
MacBook-Pro-de-Steve:/ steve$ diskutil umount force disk2s9
Volume (null) on disk2s9 force-unmounted
MacBook-Pro-de-Steve:/ steve$ sudo gpt remove -i 2 /dev/disk2
gpt remove: unable to open device '/dev/disk2': Resource busy
MacBook-Pro-de-Steve:/ steve$ diskutil umount force disk2
disk2 was already unmounted or it has a partitioning scheme so use "diskutil unmountDisk" instead
MacBook-Pro-de-Steve:/ steve$ sudo gpt remove -i 2 /dev/disk2
gpt remove: unable to open device '/dev/disk2': Resource busy
MacBook-Pro-de-Steve:/ steve$
 
Bloc de code:
Resource busy

  • signifie qu'il y a au moins un volume de monté

Passe la commande :
Bloc de code:
diskutil umountDisk force disk2

  • pour démonter tous les volumes sans éjecter le disque

Et si le retour est OK --> repasse la commande :
Bloc de code:
sudo gpt remove -i 2 /dev/disk2

  • et poste le retour.
 
Bloc de code:
Resource busy

  • signifie qu'il y a au moins un volume de monté

Passe la commande :
Bloc de code:
diskutil umountDisk force disk2

  • pour démonter tous les volumes sans éjecter le disque

Et si le retour est OK --> repasse la commande :
Bloc de code:
sudo gpt remove -i 2 /dev/disk2

  • et poste le retour.

Il m'affiche toujours Resource Busy, même si le retour de diskutil est ok:

Bloc de code:
MacBook-Pro-de-Steve:/ steve$ diskutil umountDisk force disk2
Forced unmount of all volumes on disk2 was successful
MacBook-Pro-de-Steve:/ steve$ sudo gpt remove -i 2 /dev/disk2
Password:
gpt remove: unable to open device '/dev/disk2': Resource busy
 
Ouaip !

Enfin ! la table GPT est déjà remise d'aplomb. Mais le descripteur de la partition n°2 est délirant -->
Bloc de code:
      411648  18446744073709549568      2  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7

  • car il est censé décrire une partition qui démarre au bloc n°411648 (correct) > mais qui aurait une extension de 18446744073709549568 blocs logiques de 512 octets = 9444732965 To !!!

J'espère qu'actuellement tes volumes remontent normalement > et je te propose de reporter à demain des finitions (notamment sur la partition récalcitante).
 
Ouaip !

Enfin ! la table GPT est déjà remise d'aplomb. Mais le descripteur de la partition n°2 est délirant -->
Bloc de code:
      411648  18446744073709549568      2  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7

  • car il est censé décrire une partition qui démarre au bloc n°411648 (correct) > mais qui aurait une extension de 18446744073709549568 blocs logiques de 512 octets = 9444732965 To !!!

J'espère qu'actuellement tes volumes remontent normalement > et je te propose de reporter à demain des finitions (notamment sur la partition récalcitante).
Je viens de remonter le disque dur, et la partition HDD externe (la plus importante :/) ne monte pas. En faisant un diskutil list, j'ai découvert que son nom avait disparu!
Bloc de code:
/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk2
   1:                        EFI EFI                     209.7 MB   disk2s1
   2:       Microsoft Basic Data                         -1048576 B  disk2s2
   3:                  Apple_HFS                         5.4 GB     disk2s3
   4:                  Apple_HFS                         747.6 GB   disk2s4
   5:       Microsoft Basic Data                         79.9 GB    disk2s5
   6:       Microsoft Basic Data PS3BACKUP               110.0 GB   disk2s6
   7:       Microsoft Basic Data                         49.9 GB    disk2s7

Mais ça peut attendre demain bien sur ;)
 
Ton DDE attaché au Mac > redémarre une fois --> et vérifie si le volume HDD externe remonte après réouverture de ta session.

Passe ensuite la commande :
Bloc de code:
diskutil verifyVolume disk2s4

  • qui vérifie le système de fichiers jhfs+ de la partition n°4 (si le DDE est toujours disk2 - la partition de 747 Go ayant été réindexé au rang)

Poste l'affichage retourné par la commande.
 
Ton DDE attaché au Mac > redémarre une fois --> et vérifie si le volume HDD externe remonte après réouverture de ta session.

Passe ensuite la commande :
Bloc de code:
diskutil verifyVolume disk2s4

  • qui vérifie le système de fichiers jhfs+ de la partition n°4 (si le DDE est toujours disk2 - la partition de 747 Go ayant été réindexé au rang)

Poste l'affichage retourné par la commande.
Salut, j'ai reboot mon Mac, le volume n'est toujours pas là, j'ai essayé au moins 10 fois de unmount/remount disk2, et toujours rien
 
Passe la commande :
Bloc de code:
diskutil verifyVolume disk2s4

  • si le disque du DDE est toujours disk2 > et la partition du volume HDD Externe la s4
  • la commande vérifie le système de fichiers jhfs+ (générateur du volume)

Poste l'affichage retourné.
 
Passe la commande :
Bloc de code:
diskutil verifyVolume disk2s4

  • si le disque du DDE est toujours disk2 > et la partition du volume HDD Externe la s4
  • la commande vérifie le système de fichiers jhfs+ (générateur du volume)
Poste l'affichage retourné.
Bloc de code:
Started file system verification on disk2s4
Verifying file system
Volume is already unmounted
Performing fsck_hfs -fn -x /dev/rdisk2s4
Checking Journaled HFS Plus volume
Invalid B-tree node size
The volume   could not be verified completely
File system check exit code is 8
Restoring the original state found as unmounted
Error: -69845: File system verify or repair failed
Underlying error: 8: Exec format error
 
Cette mention -->
Bloc de code:
Invalid B-tree node size

  • signifie que le fichier cardinal du système de fichiers jhfs+ : le B-tree catalog (le catalogue B-tree) est corrompu (comporte des erreurs graves).

    • ce fichier gère une arborescence logique partant d'un point-racine unique et se subdivisant en branches jusqu'à atteindre des feuilles terminales uniques qui sont les données. Sur chaque embranchement appelé node (nœud) > il y a une clé numérique > les données terminales étant elles-mêmes indexées par des nombres. Un processus d'accès à une donnée indexée 50843 (par exemple) > arrivé à un embranchement portant la clé numérique 12428 (par exemple) --> choisira automatiquement la branche "haute" (conduisant à des valeurs supérieures à clé 12428) et pas la branche "basse" conduisant à des valeurs inférieures. Ce tri automatique des embranchements pour la recherche d'une donnée d'index numérique n --> conduit automatiquement à la donnée individuelle à la fin.

    • cet arbre logique gère les accès aux fichiers en lecture > édition > ajout > suppression. Il est constamment mis à jour des suppressions et ajouts de données > par des créations d'embranchements et résections d'embranchements --> ce qui génère des erreurs mineures > mais pouvant accidentellement être des erreurs majeures. Par exemple toutes les erreurs de nodes (nœuds) sont cruciales > car en invalidant un parcours à partir de l'embranchement du node > elles empêchent l'accès au données qui en dépendent.
  • bref : le système de fichiers du volume a une erreur de catalogue B-tree de type 8 (erreur majeure irréparable). Si le volume ne monte pas > ce n'est pas un problème de table de partition GPT (ce qu'on a manipulé hier) > c'est un problème de corruption du système de fichiers jhfs+ qui en est le générateur.

Si ton volume remonte (par chance) > il faudrait absolument cloner son contenu dans celui d'un DDE parallèle de grande taille. Il n'y a pas d'autre solution (à part un reformatage destructeur).