est l’une des commandes les plus importantes de Linux, principalement utilisée pour sauvegarder des disques durs et des partitions. Lorsqu’il est utilisé correctement, dd peut être un outil puissant pour écrire des données d’une partition à une autre et effectuer différentes tâches avec des fichiers. Ici, nous vous montrons comment utiliser la commande dd à bon escient.
L’histoire de dd
La commande a été développée à l’origine aux laboratoires AT&T Bell dans les années 1970 par un informaticien nommé Ken Thompson. Il a été développé pour les systèmes basés sur Unix et a reçu un nom qui a été choisi comme référence à une déclaration trouvée dans le Job Control Language d’IBM, qui s’appelait « DD ». On peut noter que la syntaxe de la commande ressemble étroitement à une instruction dans le Job Control Language.
La commande a été initialement conçue pour être un utilitaire permettant de convertir ASCII en EBCDIC et vice versa. Il a été intégré pour la première fois à une version d’Unix en 1974, avec la sortie de la 5e édition du système d’exploitation.
dd a été appelé « disk destroyer » comme une blague dans la communauté Unix en raison de sa capacité à détruire les données sur les disques durs lorsqu’il est mal utilisé.
Opérandes de base
Maintenant que vous connaissez un peu le contexte de la commande et ses capacités destructrices lorsqu’elles sont utilisées de manière incorrecte, il est temps d’apprendre à tirer parti de tout ce qu’elle offre aux utilisateurs de différentes distributions Linux.
Tout d’abord, consultez le manuel à l’aide de la --help
drapeau:
Il existe deux opérandes pour la commande qui sont les plus couramment utilisés. Ils sont if
et of
, qui signifient respectivement « fichier d’entrée » et « fichier de sortie ». le if
l’opérande est utilisé pour représenter l’emplacement de la source, tandis que l’opérande of
L’opérande est utilisé pour représenter l’emplacement où vous avez l’intention d’enregistrer les données à partir de l’emplacement d’entrée.
dd if=<input file> of=<output file>
Les emplacements de source et de sortie les plus courants incluent les disques durs, les partitions et les images de disque.
Avant d’utiliser la commande, il peut être utile d’utiliser le fdisk
utilitaire pour afficher les partitions sur votre système. Cela peut facilement être fait en utilisant la commande -l
drapeau:
Dans ce cas, if
est utilisé pour représenter le lecteur « /dev/sda », et of
représente le lecteur « /dev/sdb », où les données de « /dev/sda » seront enregistrées :
dd if=/dev/sda of=/dev/sdb
Création d’une image disque
L’un des meilleurs cas d’utilisation de la commande est la création d’images de disque au format de fichier « .img ». Ceci est extrêmement utile pour sauvegarder des données sur votre système Linux et constitue probablement le moyen le plus rapide et le plus simple de sauvegarder un disque dur entier.
La logique ici est essentiellement la même dans ce cas, avec le if
opérande représentant le lecteur « /dev/sda » et le of
opérande représentant un fichier « .img », où seront enregistrées les données du disque dur :
dd if=/dev/sda of=example.img
Enregistrement d’une image disque sur une partition
La création d’une image disque avec la commande est assez simple, mais la version inversée de ce processus l’est également.
Dans ce scénario, notre fichier image disque agit comme fichier d’entrée et notre nouvelle partition agit comme fichier de sortie. L’utilitaire enregistre les données de notre image disque sur notre partition « /dev/sdb »:
dd if=example.img of=/dev/sdb
Création d’une image disque compressée
Si vous créez une image disque d’un disque dur de taille normale, vous pouvez imaginer que la taille du fichier de l’image disque finale sera probablement assez importante. Pour cette raison, l’utilitaire dd a une fonctionnalité qui crée des images de disque compressées.
Une image disque compressée peut être créée en utilisant le tuyau |
commander. Dans ce cas, il est utilisé pour prendre le contenu du fichier d’entrée et effectuer la gzip
commande avec un -c
flag, le contenu étant regroupé dans un fichier « .gz » :
dd if=/dev/sda | gzip -c > image.gz
Spécification d’une taille de bloc
Vous pouvez également jouer avec la vitesse d’exécution de la commande dd. Ceci peut être accompli en utilisant le bs
opérande, qui est utilisé pour représenter la taille du bloc. La taille de bloc représente le nombre d’octets dd copies dans le fichier de sortie en une seule instance. Il est représenté à l’aide de multiples de 1024 octets et la valeur par défaut est définie sur 512 octets. Plus la taille de bloc est élevée, plus les données seront enregistrées rapidement dans le fichier de sortie.
Dans ce cas, nous définissons la taille de bloc sur 2048 :
dd if=/dev/sda of=example.img bs=2048
La taille de bloc peut également être spécifiée en kilo-octets :
dd if=/dev/sda of=example.img bs=2048K
Nettoyer un disque dur
dd peut également être utilisé pour effacer votre disque dur. Ceci est accompli en lisant des zéros ou des caractères aléatoires à partir de « /dev/zero » ou « /dev/urandom » et en les enregistrant sur le disque dur/la partition, ce qui écrase les données qu’il contient. Ceci est extrêmement utile lorsque vous voulez vous assurer que vos données ne peuvent pas être récupérées facilement après avoir vendu ou autrement disposé de votre disque dur.
Écraser un disque dur à l’aide de zéros :
dd if=/dev/zero of=/dev/sdb
Le processus d’écrasement peut également être effectué à l’aide de caractères aléatoires :
dd if=/dev/urandom of=/dev/sdb
Création d’une clé USB amorçable
La création de clés USB amorçables à l’aide de fichiers « .iso » avec la commande est simple :
dd if=os.iso of=<USB drive location>
Emballer
Il est prudent de dire que la commande dd peut être considérée comme un « couteau suisse » en raison de son utilité dans de nombreux domaines et de tout ce qui concerne les disques durs, les partitions et les fichiers d’image disque. Tant que vous ne détruisez pas votre disque dur, c’est un outil efficace et simple à utiliser pour tout ce qui va de l’effacement d’un disque dur ou d’une clé USB à la création de sauvegardes compressées.