- a) tu passes d'abord une commande de démontage du volume
SD Card :
Bloc de code:
diskutil umount force /dev/disk1s1
=> en retour tu dois toucher un :
Bloc de code:
Volume SD Card on disk1s1 force-unmounted
et tu dois voir disparaître l'icône du volume
SD Card du Bureau de session (il ne faut pas démonter un volume
exFAT d'un disque en table
MBR graphiquement - via le
Finder - car cette manœuvre
éjecte le disque du même coup et rend la partition
disk1s1 inadressable).
- b) tu passes ensuite (copier-coller) la commande de recopie suivante :
Bloc de code:
sudo dd bs=512 if=/dev/rdisk1s1 of=Desktop/SD\ Card\ 2.dmg conv=noerror,sync
et ↩︎ +
password à l'aveugle et ↩︎ => tu vas voir en retour immédiat de commande se créer sur ton Bureau de session une image-disque intitulée :
SD Card 2.dmg.
Comme la commande
dd est tout aussi mutique que la commande
ditto, mais que le processus va prendre un temps fou (je t'explique plus bas), je te conseille pour savoir où en sont les choses de faire un
⌘I dans le
Finder sur cette image-disque, ce qui va t'afficher une fenêtre d'informations tout en haut de laquelle tu vas pouvoir suivre l'indexage
live continu du gain de taille de ce disque virtuel. Prends ton mal en patience : car la copie ne va pas être des quelques
7 Go de données contenues dans le volume SD Card de ta carte - non ! elle va être carrément de l'espace-disque total de sa partition, soit
32 Go !
C'est donc un énorme fichier "image-disque" qui va se créer sur ton Bureau de session. Sachant (j'ai expérimenté ma commande ce matin sur la partition démontée en volume d'une clé USB de 4 Go) que ça m'a pris environ 2H 30' pour 4 Go, tu n'as qu'à faire la multiplication qui s'applique à ton cas de figure
(il est possible que des variations de temps soient envisageables en cas de Carte SD plus rapide que ma clé USB qui est très lente. Mais par contre, mon disque interne était un SSD)
=> l'opération sera finie quand la fenêtre d'info du
Finder t'affichera
32 Go de taille de l'image-disque
SD Card 2.dmg et que tu récupéreras l'invite de commande
admin$ dans la fenêtre du «
Terminal» --> tu n'auras plus qu'à monter d'un double-clic l'image-disque
SD Card 2.dmg et inspecter le contenu de données de son volume
SD Card 2 => et à rendre compte du résultat...
Les messages d'erreurs retournés par
ditto que tu as communiqués m'ont considérablement refroidi. En abrégé : ta carte SD est présumablement en fin de vie et à changer. Son heure a sans doute sonné ! Car les «
input / output error » (erreurs d'entrée / sortie) signalent l'incapacité d'un processus à lire les données résidentes sur des séries de blocs de la partition d'un disque. Ce qui régulièrement découle d'un support-disque en fin de vie, voire d'un câble de transfert de données défaillant lorsqu'il s'agit d'un disque.
En de pareils cas, rien ne sert alors de faire appel à des « auxiliaires intelligents » (comme
rsync ou
ditto), car ces utilitaires
UNIX natifs de l'OS sont des cloneurs de
données, càd. de séquences d'écritures mobilisant chacune
n blocs, que la moindre «
input / output error » de lecture d'un seul bloc impliqué invalide globalement.
Non : en pareil cas, il faut faire appel à un « crétin méthodique ». Rien de plus harassant pour l'intellect qu'un « crétin » (parce que qu'il ne panne rien à rien, càd. ne gère pas le sens des signes, mais seulement leur tracé) ; mais par contre, rien de plus mortellement sérieux qu'un crétin « méthodique », car son souci du détail matériel ne défaille jamais.
L'utilitaire
dd est un « crétin méthodique », car ce programme
UNIX ne clone pas des
données, mais recopie
bit à bit l'espace d'une partition "
source" sur l'espace d'une partition "
destination" (qui peut être, comme dans ma commande, celle d'un disque virtuel
.dmg créé
ad hoc). En lui donnant comme unité de mesure
bs=512, il va donc
bit à bit aligner exactement 8
bits pour faire un
octet ou
byte, et il va aligner les octets par 512 pour constituer chaque fois un
bloc ou
cluster à partir de sa lecture atomique de la partition totale
SD Card pour tout recopier exactement sur la partition de l'image disque
SD Card 2.
Normalement, aucune erreur de
donnée n'intervient, car
dd se contente de décalquer les
bits de la source sur la destination. L'option
noerror couplée avec
sync est là pour empêcher qu'une défaillance de lecture d'un
bit ne donne lieu à un blocage, mais donne lieu à une inscription de (null)
bit qui fasse passer quoi qu'il arrive au
bit d'après, en respectant la congruence des alignements de 8
bits par
octet et de 512
octets par
bloc.
Évidemment, le crétin de service, passés les 7 Go de
bits correspondant à tes données, va continuer à cloner
bit à bit la suite de l'espace de la partition source, alors qu'aucune donnée d'écriture n'existe sur les blocs correspondants
. D'où le délai, pour atteindre la fin du parcours fixée à
32 Go de capacité...