Il comando "dd" può essere davvero utile quando si tratta di eseguire un backup del sistema operativo per clonare il disco su cui è installato il sistema operativo. Ecco alcuni esempi di utilizzo del comando dd per eseguire il backup del sistema operativo.
NOTA :L'unità di destinazione deve essere identica a quella dell'unità clonata o superiore. Il comando dd copierà sia lo spazio utilizzato che quello non utilizzato dalla destinazione.1. Eseguire il backup dell'intero disco rigido su un altro DISCO
1. Nell'esempio di seguito vogliamo clonare il disco "sda" e avere un disco identico sul server come "sdb".
# fdisk -l Disk /dev/sda: 12.9 GB, 12884901888 bytes 255 heads, 63 sectors/track, 1566 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00010897 Device Boot Start End Blocks Id System /dev/sda1 * 1 64 512000 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 64 1567 12069888 8e Linux LVM Disk /dev/sdb: 12.9 GB, 12884901888 bytes Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000
2. Per eseguire il backup di un'intera copia di un disco rigido su un altro disco rigido collegato allo stesso sistema, eseguire il comando dd. Il nome del dispositivo UNIX del disco rigido di origine è /dev/sda e il nome del dispositivo del disco rigido di destinazione è /dev/sdb, l'opzione di sincronizzazione consente di copiare tutto utilizzando l'I/O sincronizzato.
# dd if=/dev/sda of=/dev/sdb conv=noerror,sync 25165824+0 records in 25165824+0 records out 12884901888 bytes (13 GB) copied, 453.846 s, 28.4 MB/s
Ecco,
se :unità disco di origine (/dev/sda)
di :unità disco di destinazione (/dev/sdb)
bs :leggi e scrivi BYTES alla volta (il valore predefinito è 512 Byte, puoi usare bs=64k per dischi più grandi)
noerror :continua dopo gli errori di lettura.
sincronizzazione :usa l'I/O sincronizzato per i dati, anche per i metadati
3. Se si desidera ripristinare i dati sul disco originale è necessario ripetere il passaggio precedente con l'origine (sdb) e la destinazione (sda) corrette. In questo caso puoi anche rimuovere sda e avviare da sdb.
ATTENZIONE :L'inversione degli argomenti all'interno di un comando dd può portare alla cancellazione di tutti i tuoi dati preziosi. Assicurati di conoscere la posizione e i nomi sia della tua fonte (if=) che della tua destinazione (of=).2. Eseguire il backup dell'intero disco rigido su un'immagine disco
1. È possibile creare un file immagine del disco rigido e salvarlo in altri dispositivi di archiviazione. Ci sono molti vantaggi nel backup dei dati su un'immagine disco, uno è la facilità d'uso. Questo metodo è in genere più veloce di altri tipi di backup, consentendo di ripristinare rapidamente i dati in seguito a una catastrofe imprevista. Utilizzare il comando seguente per eseguire il backup del disco rigido /dev/sda in un file immagine disco.
# dd if=/dev/sda of=/var/tmp/sda_disk.img
Ecco,
se :unità disco di origine (/dev/sda)
di :unità disco di destinazione (/dev/sdb)
2. Per ripristinare un disco rigido con il file immagine di un altro disco rigido, utilizzare il seguente esempio di comando dd.
# dd if=sda_disk.img of=/dev/sdc
Ecco,
se :unità disco di origine (/dev/sda)
di :unità disco di destinazione (/dev/sdb)
3. Eseguire il backup dell'intero disco rigido Sull'immagine del disco su NFS e ripristinarla
1. Controlla se c'è abbastanza spazio disponibile sul server nfs.
# showmount -e nfs_server_IP Export list for xx.xx.xx.xx: /nfsshare *
# df -h Filesystem Size Used Avail Use% Mounted on xx.xx.xx.xx:/nfsshare 16G 44M 15G 1% /nfs_test
2. Crea l'immagine. Assicurati di avere abbastanza larghezza di banda disponibile.
# dd if=/dev/sda of=/nfs_test/sda_disk.img 25165824+0 records in 25165824+0 records out 12884901888 bytes (13 GB) copied, 263.396 s, 48.9 MB/s
Ecco,
se :unità disco di origine (/dev/sda)
di :unità disco di destinazione (/dev/sdb)
3. Per ripristinare dall'immagine del disco di backup su nfs (ad esempio se si verifica un errore del disco su disk sda e il sistema non può avviarsi), avviare in modalità di ripristino con rete.
4. Montare la condivisione nfs. Diciamo la directory appena creata /nfsshare.
5. Ripristina sda utilizzando il backup dell'immagine del disco.
# dd if=/nfsshare/sda_disk.img of=/dev/sda
Ecco,
se :unità disco di origine (/dev/sda)
di :unità disco di destinazione (/dev/sdb)
6. Riavvia il server.
# shutdown -r now