Spesso capita di dover copiare dischi, dvd, facendone copie esatte. Lo strumento ideale è dd.

Questo programmino da linea di comando copia da una sorgente ad un’altra. Tipicamente, se si vuole fare una copia immagine a partire da un disco esterno si procede come segue:

  • Collegare il disco
  • Si collega il disco via USB. State attenti che sia un USB 2, con la velocità dell’USB 1 ci potrebbe volere tutto il giorno. Per controllare basta fare un lsusb -t e verificare che il disco sia sotto un bus ehci 480M e non un uhci a 12M.
  • Guardando il log di sistema si può vedere quale device viene associata al disco (tail -f /var/log/messages o tail -f /var/log/syslog). Si dovrebbe vedere qualcosa tipo (se avete Ubuntu) :
  • Da cui si capisce che al disco è stato associato sdb

Fare un’immagine del disco

  • Per copiare il disco in un file immagine basterà indicare la sorgente (if – input file) e la destinazione (of – output file)
  • Dato che la copia può richiedere del tempo è utile inviare il signal SIGUSR1 per avere lo stato di avanzamento. Per esempio se il pid (ps -Af | grep dd) di dd fosse 2534:
  • Non temete il processo continua, il kill comunica semplicemente al processo di stampare lo stato di avanzamento.

Scrivere l’immagine del disco

  • Per scrivere l’immagine basta invertire if ed of

Altri usi

  • Spesso dd viene usato con nc per effettuare l’operazione di copia tramite la rete
  • Oppure per verificare le performance di un disco (qui di seguito il mio portatile quel bel giorno che avevo un disco allo stato solido da provare):