Guide complet et détaillé (avec exemples) de DD

Je vous laisse un article tout simplement génial qui Je me suis retrouvé surfer sur le net, il nous montre avec de multiples exemples et en détail ce que c'est et ce qui peut être réalisé avec la commande DD.

Je vous laisse la traduction complète du artículo:

1. Pourquoi dd?:

Nous avons choisi dd comme premier candidat de notre série car c'est un outil utile qui a de nombreuses options, comme vous le verrez. Cela en fait presque l'un des couteaux suisses du monde Linux. Oui, ce terme (Swiss Army Knife) est utilisé plus qu'il ne le devrait par les rédacteurs d'articles orientés Linux, nous ne pouvons donc pas laisser passer l'occasion de l'utiliser nous-mêmes.

2. Utilisation générale:

Avant de commencer nous voulions vous donner une idée générale de son utilisation dd. Tout d'abord, le nom vient du duplicateur de données, mais on dit aussi avec humour qu'il signifie destructeur de disque ou destructeur de données car c'est un outil très puissant. Nous recommandons donc une attention particulière lors de l'utilisation de dd car un moment de négligence peut vous coûter vos précieuses données. La syntaxe générale de la commande dd est la suivante:

# dd if = $ input_data of = $ output_data [options]

des données d'entrée y des données de sortie peut-il s'agir de disques, de partitions, de fichiers, de périphériques ?? principalement tout ce que vous pouvez écrire ou lire. Comme vous le verrez, vous pouvez utiliser dd dans un contexte réseau pour envoyer des flux de données sur votre LAN, par exemple. Vous ne pouvez avoir que la partie d'entrée de votre commande dd, ou uniquement la commande de sortie, et vous pouvez même supprimer les deux dans certains cas. Tous ces éléments seront traités dans la liste suivante.

3. Exemples:

jj si = / dev / urandom de = / dev / sda bs = 4k - »Remplissez le disque avec des données aléatoires

dd si = / dev / sda de = / dev / sdb bs = 4096 - » Mise en miroir de disque à disque

dd si = / dev / zéro de = / dev / sda bs = 4k - » Nettoyez un disque dur (peut devoir être répété)

dd if = inputfile of = / dev / st0 bs = 32k conv = sync - » Copier du fichier vers le périphérique de bande

dd if = / dev / st0 of = outfile bs = 32k conv = sync - » Le premier, inversé

dd si = / dev / sda | hexdump -C | grep [^ 00] - » Vérifiez si le disque est vraiment remis à zéro

dd if = / dev / urandom of = / home / $ user / giantfile bs = 4096 - » Remplissez une partition (attention aux partitions système!)

dd if = / dev / urandom of = myfile bs = 6703104 count = 1 - » Encoder un fichier (peut-être avant de le supprimer)

dd if = / dev / sda3 of = / dev / sdb3 bs = 4096 conv = notrunc, noerror - » Copier une partition sur une autre partition

dd if = / proc / filesystems | hexdump -C | Moins - " Afficher les systèmes de fichiers disponibles

dd si = / proc / partitions | hexdump -C | Moins - " Afficher les partitions disponibles en Ko

jj si = / dev / sdb2 ibs = 4096 | gzip> partition.image.gz conv = noerror - » Créer une image gzip de la deuxième partition du deuxième disque

dd bs = 10240 cbs = 80 conv = ascii, débloquer si = / dev / st0 de = ascii.out - » Copie le contenu d'une bande dans un fichier, conversion d'EBCDIC en ASCII

dd if = / dev / st0 ibs = 1024 obs = 2048 of = / dev / st1 - » Copie d'un périphérique bloc de 1 Ko sur un périphérique bloc de 2 Ko

dd si = / dev / zéro de = / dev / null bs = 100M count = 100
100 + 0 enregistrements dans
100 + 0 enregistrements sortis
10485760000 octets (10 Go) copiés,

5.62955 s, 1.9 Go / s

Copiez 10 Go de zéros dans la corbeille.

dd si = / dev / zéro de = / dev / sda bs = 512 compte = 2
fdisk -s / dev / sda
dd if = / dev / zero of = / dev / sda seek = (number_of_sectors - 20) bs = 1k

Effacez GPT du disque. Comment GPT écrit les données au début
Et à la fin du disque, après avoir effacé depuis le début, il faut trouver le nombre de secteurs (la deuxième commande), puis effacer les 20 derniers secteurs.

dd if = / home / $ user / bootimage.img of = / dev / sdc - » Créez un disque UDB amorçable (affiché ici comme / dev / sdc)

dd si = / dev / sda de = / dev / null bs = 1m - » Un bon moyen de trouver des blocs défectueux. Sauvegarde et système lié

dd if = / dev / sda of = / dev / fd0 bs = 512 count = 1 - » Copiez le MBR sur une disquette

dd si = / dev / sda1 sur = / dev / sdb1 bs = 4096 - » Mise en miroir de disque à disque

dd if = / dev / sr0 of = / home / $ user / mycdimage.iso \ bs = 2048 conv = nosync - » Créer une image d'un CD

mount -o boucle /home/$user/mycdimage.iso / mnt / cdimages / - » Montez l'image mentionnée localement

dd if = / dev / sda of = / dev / sdb bs = 64k conv = sync - » Utile lors du remplacement d'un disque par un disque de même taille.

dd if = / dev / sda2 of = / home / $ user / hddimage1.img bs = 1M count = 4430
dd if = / dev / sda2 of = / home / $ user / hddimage2.img bs = 1M count = 8860
[...]

Créer des images DVD d'une partition (utile pour faire des sauvegardes)

dd if = / $ location / hddimage1.img of = / dev / sda2 bs = 1M
dd if = / $ location / hddimage2.img of = / dev / sda2 seek = 4430 bs = 1M
dd if = / $ location / hddimage3.img of = / dev / sda2 seek = 8860 bs = 1M
[etc…]

Restaurer à partir de la sauvegarde précédente

dd si = / dev / zéro compte = 1 bs = 1024 recherche = 1 sur = / dev / sda6 - » Détruisez le superbloc

dd si = / dev / zéro compte = 1 bs = 4096 recherche = 0 sur = / dev / sda5 - » Une autre façon de détruire le superbloc

dd if = / home / $ utilisateur / suspect.doc | clamscan - » Recherche les virus dans le fichier (nécessite ClamAV)

dd if = / home / $ utilisateur / fichier binaire | hexdump -C | Moins - " Afficher le contenu d'un fichier binaire (nécessite hexdump)

dd if = / home / $ user / bigfile of = / dev / null
dd if = / dev / zéro de = / home / $ user / bigfile bs = 1024 count = 1000000

Comparez la vitesse de lecture / écriture du disque dur

dd si = / dev / sda de = / dev / sda - » Donner une nouvelle vie aux anciens disques durs qui n'ont pas été utilisés depuis un certain temps (les disques doivent être «démontés»)

jj si = / dev / mem | chaînes | grep 'string_to_search' - » Examiner le contenu de la mémoire (lisible par l'homme, c'est-à-dire)

dd if = / dev / fd0 of = / home / $ user / floppy.image bs = 2x80x18b conv = notrunc - » Copier une disquette

dd si = / proc / kcore | hexdump -C | Moins - »Affiche la mémoire virtuelle

dd if = / proc / filesystems | hexdump -C | Moins - " Afficher les systèmes de fichiers disponibles

dd if = / proc / kallsyms | hexdump -C | Moins - " Afficher les modules chargés

dd si = / proc / interrompt | hexdump -C | Moins - " Affiche la table d'interruption

dd if = / proc / uptime | hexdump -C | Moins - " Affiche la disponibilité en secondes

dd si = / proc / partitions | hexdump -C | Moins - " Afficher les partitions disponibles en Ko

dd si = / proc / meminfo | hexdump -C | Moins - " Affiche l'état de la mémoire

dd if = / dev / urandom of = / home / $ user / myrandom bs = 100 count = 1 - » Créer un fichier de 1 ko de charabia aléatoire

dd if = / dev / mem of = / home / $ user / mem.bin bs = 1024 - » Crée une image de l'état actuel de la mémoire système

dd if = / home / $ utilisateur / monfichier - » Imprimer le fichier sur stdout

dd si = / dev / sda2 bs = 16065 | hexdump -C | grep 'text_to_search' - » Recherchez une chaîne dans une partition entière; même s'il est sécurisé, vous pouvez démarrer un liveCD

dd if = / home / $ user / file.bin skip = 64k bs = 1 of = / home / $ user / convfile.bin - » Copiez file.bin dans convfile.bin en ignorant les 64 premiers Ko

dd if = / home / $ user / bootimage.img of = / dev / sdc - » Créez un disque UDB amorçable (affiché ici comme / dev / sdc)

dd if = / dev / mem bs = 1k skip = 768 count = 256 2> / dev / null | chaînes -n 8 - » Lisez le BIOS.

dd bs = 1k if = imagefile.nrg of = imagefile.iso skip = 300k - » Convertit une image Nero en image ISO standard.
Cela est possible car la seule différence entre les deux réside dans les 300 Ko d'en-tête que Nero ajoute à une image ISO standard.

echo -n "bonjour le monde vertical" | dd cbs = 1 conv = débloquer 2> / dev / null - » Essayez-le, c'est sûr. 🙂

dd si = / dev / sda1 | gzip -c | split -b 2000m - \ /mnt/hdc1/backup.img.gz - » Créer une image gzip d'une partition en utilisant Split

cat /mnt/hdc1/backup.img.gz.* | gzip -dc | jj de = / dev / sda1 - » Restaurer la sauvegarde précédente

jj si = / dev / zéro de = monimage bs = 1024 compte = 10240 - » Créer une image disque vide

dd ibs = 10 saut = 1 - » Fractionner les 10 premiers octets de stdin

dd bs = 265b conv = noerror if = / dev / st0 of = / tmp / bad.tape.image - » Fait une image d'une bande avec de mauvais points

jj si = / dev / sda compte = 1 | hexdump -C - » Afficher votre MBR

dd si = / dev / sda | nc -l 10001 nc $ system_to_backup_IP 10001 | jj de = sysbackupsda.img - » Sauvegarde réseau rapide à l'aide de netcat

dd if = / dev / zero of = / dev / sdX bs = 1024000 count = 1 - » Nettoyez les 10 premiers Mo de la partition

dd si = / dev / zéro de = tmpswap bs = 1k
count = 1000000
chmod 600 tmpswap
mkswap tmpswap
échanger sur tmpswap

Créer un espace d'échange temporaire

dd if = / dev / sda of = / dev / null bs = 1024k count = 1024
1073741824 octets (1.1 Go) copiés,
24.1684 s, 44.4 Mo / s

Détermine la vitesse d'E / S séquentielle de votre disque.

jj si = / dev / nombre aléatoire = 1 2> / dev / null | od -t u1 | \ awk '{imprimer $ 2}' | tête -1 - » Générer un nombre aléatoire

dd if = / dev / mem of = myRAM bs = 1024 - » Copier la mémoire RAM dans un fichier

jj si = / dev / sda bs = 512 compte = 1 | od -xa - » Affichez le contenu de votre MBR au format hexadécimal et ASCII

dd if = / my / old / mbr of = / dev / sda bs = 446 count = 1 - » Restaure le MBR sans modifier l'enregistrement de la table de partition qui est compris entre 447 et 511 octets

dd si = / dev / sda1 | divisé -b 700m - image-sda1 - » Créez une copie de la partition et enregistrez les images dont la taille maximale du volume est de 700 Mo

ls -l | dd conv = ucase - » Convertit la sortie d'une commande en majuscules

echo "MON TEXTE DE MAJUSCULE SUPÉRIEURE" | dd conv = lcase - » Convertissez n'importe quel texte en minuscules

dd if = / etc / passwd cbs = 132 conv = ebcdic of = / tmp / passwd.ebcdic - » Convertit le fichier de mot de passe système en un fichier de longueur fixe au format EBCDIC

dd if = text.ascii of = text.ebcdic conv = ebcdic - » Passer de ASCII à EBCDIC

dd if = myfile of = myfile conv = ucase - » Convertir un fichier en majuscules (simple remplacement SED ou tr)

4. Conclusion:

Ce n'est qu'une petite partie de ce que dd peut faire et nous espérons que cet article les a truqués pour couvrir les exemples les plus utilisés pour l'utilisateur ordinaire. Cependant, avant d'aller plus loin, nous vous recommandons de lire la documentation de votre disque dur, de rechercher des éléments tels que les limitations LBA, et de faire très attention lorsque vous utilisez dd dans un terminal racine. Bien sûr, vous avez déjà des sauvegardes, mais un petit soin supplémentaire vous évitera des heures de travail inutile.

Et là se termine l'article.

Pour mémoire, je n'ai testé aucune des commandes présentées dans cet article, donc si quelqu'un utilise mal (ou incorrectement) ces commandes, il est fort probable que s'il endommage quelque chose sur son ordinateur, je ne pourrai pas pour vous aider.

Rien que, petit à petit je testerai les commandes hehe, si je trouve quelque chose d'intéressant je le partage.

salutations


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   luweeds dit

    Excellent article, donc une commande est analysée en profondeur et nous en apprenons donc beaucoup sur son sujet. Félicitations et merci comme toujours! 😉

  2.   oscar dit

    Très bonne et intéressante entrée, comme je la trouve importante, je vais la déposer.
    J'imagine que vous et votre partenaire retrouverez leurs batteries bien chargées après deux jours de vacances, hahahahaha.
    J'ai raté le manque d'articles sur le blog.

    1.    KZKG ^ Gaara <"Linux dit

      Merci, le crédit n'est pas à moi ... je viens de mettre la traduction 🙂
      Et haha ​​oui, demain viendra plus d'articles haha, on s'excuse pour ces jours sans rien publier, même en regardant les statistiques on voit le déclin qu'on a eu hehe

    2.    elav <° Linux dit

      Des vacances dites-vous? Hahahaha… j'aurais aimé que ça soit…

  3.   oléksis dit

    Bon article, comme je vous le rappelle toujours si vous pouvez activer un plugin pour les exporter au format PDF ou joindre l'article au format PDF

    Salutations!

    1.    et courage dit

      Au passage je vous rappelle qu'il faut ouvrir un forum car il y a une tendance à se décocher beaucoup dans les posts (je m'inclus moi-même)

      1.    KZKG ^ Gaara <"Linux dit

        Les erreurs ou problèmes que nous avons présentés, les problèmes de connexion avec la base de données et autres, sont dus au fait que le site génère trop d'activité ou de trafic, et c'est pourquoi nous sommes hors ligne pendant quelques instants. Si en plus du site, nous ajoutons un forum, cela générera plus de trafic et aggravera tout.

        L'idée du forum oui, on l'aime, on a vraiment envie de le faire, mais pour le moment on ne peut malheureusement pas 🙁

        1.    et courage dit

          WordPress a un plugin pour cela, vous n'avez pas besoin d'utiliser des sites que vous ne pouvez pas voir

      2.    oléksis dit

        Ok ... une alternative sans ajouter d'autre plateforme ou site est bbPres (bbpress.org) sur WordPress

        Salutations!

        1.    KZKG ^ Gaara <"Linux dit

          Oui, on le connaît hehe, on pensait en fait à FluxBB 🙂
          Le problème n'est pas une autre base de données ou utiliser le même avec plus de tables, mais seulement plus d'activité.

      3.    elav <° Linux dit

        Nous allons ouvrir un forum très bientôt 😀

    2.    KZKG ^ Gaara <"Linux dit

      Nous devons encore tester suffisamment ce plugin, puis le mettre s'il fonctionne bien 🙂
      Nous n'avons pas eu le temps haha

  4.   chorée dit

    Cher collègue, heureux je cite cette très bonne pitié que c'est tellement coincé l'application que j'aimerais que vous abordiez plus profondément puisque j'aimerais savoir
    Si vous pouvez créer un aimant amorçable en DVD ou * .iso, compressé, merci d'avance, j'espère que votre réponse à mon post-script Je pense que vous êtes le seul de tout le réseau hispanique abala qui l'a plus étendu dans le Grand article expliqué,

  5.   69le meilleur69 dit

    Comment pourrais-je cloner d'une machine à une autre via le réseau? dans mon cas, il y a 2 ordinateurs portables connectés dans un réseau local à la fois avec une direction statique

  6.   Erick dit

    Merci pour l'info 🙂

  7.   Gildade4 dit

    Après mon contrat modifié
    http://premium.cars.purplesphere.in/?post.zoey
    mamans et filles porno gratuit gratuit 3gp clips vidéo porno gay buzzer porno pingouin vids route porno 96 porno

  8.   aïasi bor dit

    La commande de donner vie à d'anciens documents est d'une importance capitale. Heureusement, c'est une courte liste de ce qui peut être fait!