Une clé USB, quand ça marche (ce qui est la généralité) : c'est à peu près aussi passionnant pour l'esprit qu'un briquet Bic à côté d'un cendrier. Par contre, mettez une clé USB entre les mains de yeedaki : la généralité se trouve virée à la singularité la plus intriguante (comme toutes les singularités). La clé devient un « objet paradoxal » fascinant par les anomalies qu'il présente à l'esprit.
Prenons cette clé USB
Lacie. C'est une clé à première vue banale (comme le « morceau de cire » de
Descartes) : il suffisait de l'attacher au Mac et l'icône d'un volume
Lacie s'affichait sur le Bureau de session pour permettre tous les glisser-déposer de fichiers voulus. Mais voilà : inspectée dans l'«
Utilitaire de Disque» d'«
El Capitan» autant que par une commande
diskutil dans le «
Terminal», le même objet prend une allure d'une inquiétante étrangeté pour l'esprit.
Voici comment
diskutil le représentait :
Bloc de code:
/dev/disk3 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: Lacie *16.2 GB disk3
Seul le disque de la clé est identifié =>
0: disk3 (et aucune partition de ce disque). Mais ce "disque" de la clé est assimilé directement à un volume =>
NAME: Lacie. L'«
Utilitaire de Disque» d'«
El Capitan» est un peu plus loquace : il identifie ce
Lacie comme un "
Volume Physique" et lui reconnaît un système de fichiers
MS-DOS (FAT) - ce que, très curieusement, la commande
diskutil ne relève pas, elle : elle n'associe au
disk3 ni une carte de partition (en tant que disque), ni un format de système de fichiers (en tant que volume). Pourtant l'«
Utilitaire de Disque» pilote graphiquement l'utilitaire UNIX
diskutil.
Entre temps, ce "
Volume Physique" aura changé de nom : de
Lacie >
KEYLACIE.
Mais voici qu'intervient l'avatar de l'«
Utilitaire de Disque» de la vieille école : sa version
10.10.5. Tout change : d'un seul coup, le disque de la clé devient identifiable, séparément de son volume monté :
WhizKey >
KEYLACIE. Suite à cette identification du disque (précédemment occulté sous le volume), il devient possible de repartitionner la clé, pour lui imposer une
GPT avec 2 partitions régulières : une
EFI et une
LACIE au format
jhfs+.
--------------------
Cet événement surprenant est riche en enseignements. D'abord, il y a plus dans l'ensemble de l'«
Utilitaire de Disque» de la vieille école, je ne dis pas que dans celui d'«
El Capitan» (car c'est un truisme), mais que dans la somme de ses éléments : les binaires UNIX pilotés (
diskutil dans le cas de figure qui importe, ici). Car l'«
Utilitaire de Disque» vieille école est capable de représenter séparativement le disque de la clé et son volume, là où la commande
diskutil list classique échoue à le faire. Y a-t-il des verbes (et des options) non documentés pour
diskutil utilisés par le logiciel ?
Il est quand même intéressant de noter que l'«
Utilitaire de Disque» vieille école évalue le disque
WhisKey de la clé comme relevant d'un "
Schéma de partition non formaté". Tout se passe comme si, sur le
secteur de boot du disque de la clé (= le ou les blocs de tête supportant les descripteurs d'une table de partition), aucune table de partition régulière ne s'était trouvée inscrite (ni une
MBR, ni une
GPT), dont aurait fait partie la définition d'une partition principale. Et pourtant, malgré l'absence d'une telle table de partition réglementaire, une partition se trouvait bien définie, associée à un
format de système de fichiers déterminé (
MS_DOS), à un
nom (
KEYLACIE), et à une
taille (l'espace quasi total du disque).
Voici une conjecture de ma part : il y a lieu de penser que la firme
Lacie inscrit sur le
secteur de boot de ses clés des descripteurs qui ne sont pas identifiables comme ceux d'une table de partition réglementaire, mais qui jouent néanmoins leur rôle pour permettre la description d'une partition associée à un format de système de fichiers. Ce caractère atypique déroute complètement la commande
diskutil list comme l'«
Utilitaire de Disque» d'«
El Capitan» : il y a incapacité d'identifier une table de partition, et donc un disque - seul, le volume rejeté se trouve reconnu. Cette incapacité affecte aussi les commandes
gpt comme
gdisk, qui ne parviennent pas à lire les descripteurs de l'en-tête du disque.
De la plus inattendue des façons, l'«
Utilitaire de Disque» de la vieille école, lui, tout en étant incapable d'interpréter le type des descripteurs de l'en-tête du disque, est néanmoins capable de localiser l'espace de démarrage de la clé où ils sont inscrits, et dont d'identifier une zone de définition de disque. Et d'en effacer les descripteurs maison, pour y inscrire ceux d'une
GPT.
--------------------
Pas totalement effacés d'ailleurs, car la représentation déboguée de cet «
Utilitaire» révèle une "pseudo-partition" non montée intitulée
WhisKey, précédant la partition
EFI de la
GPT : les descripteurs "maison" antérieurs y auraient-ils été déplacés lors du retablage en
GPT ? Y aurait-il désormais, sur la zone de boot de la clé, 2 cartes alternatives : les descripteurs de la
GPT sur les 32 premiers blocs et ceux "maison" de
Lacie je ne sais où ?
Pour tenter d'éclairer ce point sibyllin, il serait intéressant de repasser la commande :
Bloc de code:
sudo gpt shown /dev/disk1
(si le disque de la clé est bien
disk1) pour voir comment se trouvent cartographiés actuellement les blocs de la clé. Voire aussi une :
pour vérifier comment
gdisk identifie les cartes alternatives du
secteur de boot de la clé.
Peut-on imputer au [néo-]
kernel d'«
El Capitan» (d'une architecture nouvelle par rapport au
mach_kernel des OS antérieurs) une part de responsabilité dans ce problème de représentation paradoxale de la clé ? - je n'ai pas les moyens d'en juger.
En tout cas, cette expérimentation fait la preuve de l'absolue supériorité du grand logiciel «
Utilitaire de Disque» de la vieille école, injustement massacré dans sa version minable d'«
El Capitan».
Pour finir ces considérations dominicales : il serait intéressant,
yeedaki, que tu réattaches à ton Mac ta première clé (celle qui est verrouillée en lecture seule), pour voir comment «
DiskOldility» la représente et si elle serait par hasard manipulable par ce logiciel.
--------------------