Problème de reconnaissance et de montage de disque externe sous Catalina

D'accord, voici :
Bloc de code:
wifibridge-3:~ macbookprotbjcc$ sudo gpt remove -i 2 disk2
Password:
disk2s2 removed
wifibridge-3:~ macbookprotbjcc$ sudo gpt add -b 9453280 -s 7804376960 -t 48465300-0000-11AA-AA11-00306543ECAC -i 2 disk2 ; diskutil list disk2
disk2s2 added
/dev/disk2 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *4.0 TB     disk2
   1:                        EFI EFI                     209.7 MB   disk2s1
   2:                  Apple_HFS                         4.0 TB     disk2s2
wifibridge-3:~ macbookprotbjcc$
 
Toujours aucun volume mentionné sur la partition.

- je fais une pause en ce qui concerne ton fil. Je reviendrai plus tard à tête reposée :hilarious:​
 
Bonjour JCC_FRANCE

Je présume que rien n'a changé de ton côté en ce qui concerne ton disque de 4 To ?
 
Le disque de 4 To branché > repasse un :
Bloc de code:
diskutil list external

  • qui affiche uniquement les disques externes

Poste le retour => que je sois à jour de l'index d'appareil actuel du 4 To.
 
Bonsoir Macomaniac,

Désolé mais je n'avais pas vu le post jeudi dernier.
Je me reconnecte là... Et vu ce qui se passe dans le pays, je crois que je vais avoir du temps ... ^^

Bloc de code:
wifibridge-3:~ macbookprotbjcc$ diskutil list external
/dev/disk2 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        +23.6 MB    disk2
   1:        Apple_partition_map                         32.3 KB    disk2s1
   2:                  Apple_HFS Flash Player            23.6 MB    disk2s2

/dev/disk3 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        +16.5 MB    disk3
   1:        Apple_partition_map                         32.3 KB    disk3s1
   2:                  Apple_HFS Flash Player            16.5 MB    disk3s2

/dev/disk4 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *4.0 TB     disk4
   1:                        EFI EFI                     209.7 MB   disk4s1
   2:                  Apple_HFS                         4.0 TB     disk4s2

wifibridge-3:~ macbookprotbjcc$
 
Bonsoir JCC

Je te propose de reprendre demain dans ce fil.

- car il faut que je le relise en étudiant le tableau initial de la distribution des blocs => pour voir s'il me vient une idée.​
 
Voici quelle était la distribution des blocs au départ -->
Bloc de code:
wifibridge-3:~ macbookprotbjcc$ sudo gpt show disk2
Password:
       start        size  index  contents
           0           1         PMBR
           1           1         Pri GPT header
           2          32         Pri GPT table
          34        2014         
        2048     4980480      1  GPT part - A19D880F-05FC-4D3B-A006-743F0F84911E
     4982528     4194304      2  GPT part - A19D880F-05FC-4D3B-A006-743F0F84911E
     9176832      276448         
     9453280  7804376960      5  GPT part - A19D880F-05FC-4D3B-A006-743F0F84911E
  7813830240      206895         
  7814037135          32         Sec GPT table
  7814037167           1         Sec GPT header

  • on voit 3 partitions inégales : une qui commence au bloc n° 2048 (4980480 blocs = 2,6 Go d'extension) > une qui commence au bloc n° 4982528 (4194304 blocs = 2,1 Go d'extension) > et une qui commence au bloc n° 9453280 (7804376960 blocs = 4 To d'extension).
  • on a essayé de recréer une partition à partir du bloc n° 409640 (1er bloc après une partition EFI recréée de 209,7 Mo) > pour une extension de 7813627495 blocs (= 4 To) => mais aucun volume n'a été remonté - signe que le bloc n° 409640 n'était pas le super-bloc portant le header d'un système de fichier formateur de volume toujours inscrit sur les blocs. Cet échec a eu lieu avec 2 variations de types de partition : "Apple_HFS" & "Apple_CoreStorage".
  • on a essayé de recréer une partition à partir du bloc n° 9453280 (1er bloc de la partition initiale) > pour une extension de 7804376960 blocs (4 To) > ce dans le type de partition exclusif = "Apple_HFS". Sans remontage de volume => signe encore que le bloc n° 9453280 n'était pas le super-bloc d'un système de fichiers correspondant au type "Apple_HFS". Et on s'était arrêté là.

On pourrait supprimer l'actuel descripteur GPT > puis le recréer avec la même localisation (même bloc de départ9453280) > mais dans le type "Apple_CoreStorage" => pour voir si un volume se trouve remonté.

- en cas d'échec => des recréations spéculatives de descritpeurs de partition --> risquent de manquer de "points d'ancrage" fournis par le tableau initial des blocs.​
 
Bonsoir Macomaniac,

Oui, je suis prêt à tenter cette 3ème solution.

Je traduis le "en cas d'échec" par la diminution des potentiels de retrouver un volume et le contenu monté?
 
Oui. La problématique est la suivante -->

- aucune partition n'existe sur un disque. Càd. aucune "balise" ne marque "tel bloc" comme étant le bloc de départ d'une partition et "tel bloc" comme étant son bloc de fin. C'est un descripteur présent dans la table GPT des 33 premiers blocs du disque qui décrit "virtuellement" la partition du disque. Cette table GPT est lue par le kernel (le moteur du Système démarré) > et c'est le kernel qui convertit les descriptions des descripteurs en "appareils logiques du disque".​
- par contre > ce qui existe sur le disque --> ce sont les écritures : soit du système de fichiers (qui est le transformateur d'un espace de partition en volume) > soit des fichiers (gérés comme objets lisibles du volume par le système de fichiers). Ces écritures utilisent le bloc (de 512 octets en général) comme la plus petite unité signifiante pour l'inscription de fichiers. Or parmi tous ces blocs écrits > il y en a un qui a un privilège absolu et qu'on peut donc appeler le "super-bloc" : c'est le bloc initial sur lequel se trouve écrit le header (en-tête) du système de fichiers. C'est donc le bloc d'ancrage ou bloc origine des écritures du système de fichiers (formateur du volume).​
- pour que ce super-bloc du système de fichiers puisse être pris en charge par le kernel > il faut de toute nécessité qu'il corresponde au 1er bloc d'une partition (virtuelle) décrite par un descripteur de la GPT. Ainsi : le kernel lisant tel descripteur qui lui fait "construire en appareil logique" une partition > va au 1er bloc de cette partition sur le disque > et si ce 1er bloc de la partition décrite par le descripteur coïncide avec le "super-bloc" d'un système de fichiers => hop ! le système de fichiers initié à partir du "super-bloc" se trouve "pris en charge" (chargé) par le kernel et hop ! le kernel monte le volume défini ou formé par ledit système de fichiers (à condition que le système de fichiers soit valide = sans erreurs).​

En conséquence de cette problématique esquissée : notre problème théorique consiste à conjecturer que tel bloc (défini par son de bloc dans la GPT) => serait bien le super-bloc où le système de fichiers qui formait ton volume aurait son header. Si on pouvait déterminer avec certitude quel est ce de bloc du disque = super-bloc du système de fichiers => alors recréer un descripteur GPT décrivant "virtuellement" une partition dont le 1er bloc serait ce super-bloc --> n'est qu'une question de technique de commande du terminal sans aucune difficulté formelle. Mais ce de bloc = super-bloc du système de fichiers => rien n'assure quel il est. Voilà l'ennui...

- problème annexe : une partition se trouve décrite conformément à un type par le descripteur GPT (par exemple : type "Apple_HFS" ou type "Apple_CoreStorage"). Pour que le kernel lisant un descripteur GPT et construisant un appareil logique de partition d'après lui => puisse prendre en charge le 1er bloc décrit (identique au super-bloc -supposons- du système de fichiers) => il faut que le type de la partition soit en conformité logique avec le système de fichiers inscrit. Décrire comme de type "Microsoft Basic Data" une partition dont le système de fichiers inscrit sur les blocs est un jhfs+ d'Apple => introduit une "inconsistance formelle" qui proscrit la prise en charge du système de fichiers par le kernel.​

Je ne sais pas si ces considérations t'éclairent un peu sur la problématique de recréation d'un descripteur de partition ?
 
Si, oui, c'est loin d'être simple mais je perçois la difficulté et l'enjeu (et aussi que j'aurai dû noté toutes les caractéristiques de formatage de ce disque).

Dans le problème annexe, en admettant que le choix du type de partition ne soit pas en conformité logique avec le système de fichiers inscrit, est-ce qu'il est envisageable d'opérer avec d'autres tentatives de choix de partition sans que cela affecte l'intégrité des fichier ou du système de fichier?

Je peux me permettre de te demander si tu travailles précisément dans ce domaine ou si tu es un passionné de chez passionné?
Car franchement prendre le temps d'expliquer le plus clairement possible à "Mr tout le monde" ce qu'il en est de toute cette mécanique, chapeau!
 
Toutes les créations de descripteurs et les suppressions de descripteurs qu'on fait => n'écrivent qu'au secteur de la table GPT du disque (qui va du bloc1 au bloc33). Et rien au-delà. Donc il ne se produit aucune écriture sur des blocs du disque qui pourraient porter le système de fichiers du volume.

- dans ton cas de figure > on a créé un descripteur de partition dans le type "Apple_HFS" > en choisissant en 1er bloc de la partition décrite le n° 9453280. On peut supprimer ce descripteur > et en créer un nouveau assignant un type : "Apple_CoreStorage" pour le même de bloc de départ (n° 9453280).​

[Je n'ai aucune formation ni profession en informatique. Je m'intéresse seulement à explorer théoriquement des problèmes qui se posent.]
 
Ok pour cette nouvelle tentative.

C'est fou ça car ton approche théorique est d'une précision. Il y a des Pros qui ne sont pas aussi méthodique ! ^^
 
Repasse une commande :
Bloc de code:
diskutil list

  • et poste le tableau des disques => que je revoie l'index d'appareil qu'a le DDE.
 
Voici :
Bloc de code:
wifibridge-3:~ macbookprotbjcc$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI EFI                     314.6 MB   disk0s1
   2:                 Apple_APFS Container disk1         250.7 GB   disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +250.7 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD - Données  202.2 GB   disk1s1
   2:                APFS Volume Preboot                 83.2 MB    disk1s2
   3:                APFS Volume Recovery                526.6 MB   disk1s3
   4:                APFS Volume VM                      5.4 GB     disk1s4
   5:                APFS Volume Macintosh HD            11.0 GB    disk1s5

/dev/disk2 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        +23.6 MB    disk2
   1:        Apple_partition_map                         32.3 KB    disk2s1
   2:                  Apple_HFS Flash Player            23.6 MB    disk2s2

/dev/disk3 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        +16.5 MB    disk3
   1:        Apple_partition_map                         32.3 KB    disk3s1
   2:                  Apple_HFS Flash Player            16.5 MB    disk3s2

wifibridge-3:~ macbookprotbjcc$
 
Avec le disque concerné, c'est mieux!

Bloc de code:
wifibridge-3:~ macbookprotbjcc$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI EFI                     314.6 MB   disk0s1
   2:                 Apple_APFS Container disk1         250.7 GB   disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +250.7 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD - Données  202.2 GB   disk1s1
   2:                APFS Volume Preboot                 83.2 MB    disk1s2
   3:                APFS Volume Recovery                526.6 MB   disk1s3
   4:                APFS Volume VM                      5.4 GB     disk1s4
   5:                APFS Volume Macintosh HD            11.0 GB    disk1s5

/dev/disk2 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        +23.6 MB    disk2
   1:        Apple_partition_map                         32.3 KB    disk2s1
   2:                  Apple_HFS Flash Player            23.6 MB    disk2s2

/dev/disk3 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        +16.5 MB    disk3
   1:        Apple_partition_map                         32.3 KB    disk3s1
   2:                  Apple_HFS Flash Player            16.5 MB    disk3s2

/dev/disk4 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *4.0 TB     disk4
   1:                        EFI EFI                     209.7 MB   disk4s1
   2:                  Apple_HFS                         4.0 TB     disk4s2

wifibridge-3:~ macbookprotbjcc$
 
C'est disk4. Passe la commande :
Bloc de code:
sudo gpt show disk4

  • qui lit la GPT du DDE => et affiche la distribution des blocs qu'elle gère actuellement

Poste le tableau.

Note : du tableau fourni par la commande diskutil => au tableau fourni par la commande gpt : on passe de la construction d'appareils logiques de partitions que le kernel effectue d'après sa lecture de la GPT => au plan primaire du descriptif des blocs par la table.