La commade dd permet d'effectuer une copie intégrale d'un disque vers un autre. Le disque copié peut être le disque interne de l'ordinateur, un disque externe, une carte SD ou micro SD, etc.
La signification des lettres dd n'est pas claire. Selon différentes sources, ellle peut signifier Data Duplicator, Disk Dump, Dump Data ou encore Copy and Convert - mais la commande cc était déjà prise alors la version dd a été retenue.
La commande dd sous Mac est très semblable à la version Linux. Elle comporte cependant quelques différences dont vous devrez être au fait si vous travaillez dans les deux environnements. Je vais vous les souligner au fur et à mesure de mes explications.
Note : si vous n'êtes pas fervents du travail à la ligne de commande, il est possible d'effectuer le même travail à partir de l'Utilitaire de disque. Des explications détaillées vous sont fournies ici : https://support.apple.com/fr-ca/guide/disk-utility/dskutl11888/19.0/mac/10.15.
Dans la démonstration qui suit, je vais utiliser des commandes dans le Terminal pour copier la carte micro SD de mon Raspberry Pi sur le disque dur de mon MacBook Pro.
La copie créera un fichier avec l'extension .img. Ce fichier contiendra une copie intégrale de la carte, incluant toutes ses partitions.
/dev/disk2 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *15.5 GB disk2
1: Windows_FAT_16 RECOVERY 2.6 GB disk2s1
2: Linux 33.6 MB disk2s5
3: Windows_FAT_32 boot 268.4 MB disk2s6
4: Linux 12.6 GB disk2s7
/dev/disk2s1 5029504 4846592 182912 97% 0 0 100% /Volumes/RECOVERY
/dev/disk2s6 516188 108923 407265 22% 0 0 100% /Volumes/boot
Ces entrées correspondent aux deux partitions de ma carte (s1 et s6). Le point de montage est la partie commune entre les deux, c'est-à-dire /dev/disk2.
Remarquez que j'ai ajouté un r dans le point de montage (/dev/rdisk2) afin de travailler en mode disque brut (raw disk). Ceci augmente considérablement la vitesse de traitement.
Ajustez le point de montage puis le nom du fichier vers lequel vous désirez copier le disque. Il est intéressant - mais non obligatoire - de terminer le nom du fichier par la date du jour au format aaaa-mm-jj.
sudo dd bs=32m if=/dev/rdisk2 of=copiedisque-aaaa-mm-jj.img
Note : sous Linux, la taille des blocs (attribut bs) doit prendre un M majuscule. De plus, il n'est pas possible de travailler avec un disque brut alors il ne faut pas mettre de r dans le point de montage.
Cette opération peut prendre de longues minutes. À titre d'exemple, ma carte de 16 Go a été copiée en 4 minutes. Si je fais le même exercice sans utiliser le disque brut (pas de r dans le point de montage), la même opération prend 33 minutes.
Pendant que la copie est en cours, vous pouvez appuyer sur Ctrl + t (Mac ou Linux) à tout moment pour voir le degré d'avancement.
Il n'est pas très utile de créer une image d'un disque si on ne peut pas la remettre en place au besoin ! Voici donc comment réinitialiser un disque à partir de la précieuse image.
Vous devrez d'abord « démonter » le disque à l'aide de la commande :
diskutil unmountDisk /dev/disk2
Utilisez ensuite la commande dd inverse de cellle qui a créé l'image, c'est-à-dire que l'entrée if (input file) devriendra of (output file) et vice-versa.
sudo dd bs=32m if=copiedisque-aaaa-mm-jj.img of=/dev/rdisk2
Si le fichier .img n'est pas placé dans le dossier courant, vous devrez spécifier son chemin. Sous Mac, vous pouvez le copier facilement avec cette technique : Copier le chemin d'un fichier.
Finalement, il faut éjecter le disque de façon sécuritaire.
diskutil eject /dev/disk2
Note : avec la commande diskutil unmountDisk, le disque ne peut pas être utilisé pour les opérations courantes comme la lecture ou l'écriture mais il demeure « disponible » pour le système d'exploitation pour effectuer certaines opérations, par exemple utiliser la commande dd. Avec la commande diskutil eject, le disque n'est plus visible pour le système d'exploitation. Il est donc possible de le retirer en toute sécurité.
Vous pouvez également utiliser l'Utilitaire de disque de macOS pour remettre une image en place sur le disque de votre choix. Son utilisation est assez intuitive et bien expliquée ici : https://support.apple.com/fr-ca/guide/disk-utility/dskutl14078/mac
▼Publicité
Site fièrement hébergé chez A2 Hosting.