Это старая версия документа.
Содержание
Clone HDD or flash disks
Whole disk
dd if=/dev/sda of=hdd.img
dd if=hdd.img of=/dev/sda
One partition
dd if=/dev/sda1 of=hdd.img
dd if=hdd.img of=/dev/sda1
One partition
dd if=/dev/sda1 of=hdd.img
dd if=hdd.img of=/dev/sda1
CD
dd if=/dev/cdrom of=/mnt/cdbackup.iso
dd if=/mnt/cdbackup.iso of=/dev/cdrom
Over network
Clone drives over a network:
dd if=/dev/sda | ssh username@host «dd of=/dev/sda»
Dump an image over a network:
dd if=/dev/sda | ssh username@host «dd of=/mnt/hdd.img»
Clone a networked drive onto yours:
ssh username@host «dd if=/dev/sda» | dd of=/dev/sda
Clone a networked image onto yours:
ssh username@host «dd if=/mnt/hdd.img» | dd of=/dev/sda
Copying MBR
MBR Total Size = 446 + 64 + 2 = 512
- 446 bytes - Bootstrap.
- 64 bytes - Partition table.
- 2 bytes - Signature.
512 vs 446 Bytes:
- Use 446 bytes to overwrite or restore your /dev/XYZ MBR boot code only with the contents of $mbr.backup.file.
- Use 512 bytes to overwrite or restore your /dev/XYZ the full MBR (which contains both boot code and the drive's partition table) with the contents of $mbr.backup.file.
dd command to copy MBR (identically sized partitions only)
Type dd command as follows:
dd if=/dev/sda of=/dev/sdb bs=512 count=1
Above command will copy 512 bytes (MBR) from sda to sdb disk. This will only work if both discs have identically sized partitions.
dd command for two discs with different size partitions
dd if=/dev/sda of=/tmp/mbrsda.bak bs=512 count=1
Now to restore the image to any sdb:
dd if=/tmp/mbrsda.bak of=/dev/sdb bs=446 count=1
Watching Progress
First, find out the process id of the dd process by running the following in the new virtual terminal.
$ pgrep -l '^dd$' 8789 dd
To send the USR1 signal to the dd prcoess:
$ kill -USR1 8789 $
Note that as soon as the USR1 signal is detected, dd will print out the current statistics to its STDERR.
$ dd if=/dev/random of=/dev/null bs=1K count=100 0+14 records in 0+14 records out 204 bytes (204 B) copied, 24.92 seconds, 0.0 kB/s