I need to copy one disk to another. I tried with the command below and it takes nearly a day to copy 1 TB of disk. dd if=/dev/sda of=/dev/sdb I have tried the same on a Unix system with the command below and it completes within a few hoursdd if=/dev/sda of=/dev/rdskWhat is the alternative I could use to copy from disk to disk as faster?
Why dd takes too long?
hard disk;dd
dd has many (weird) options, see dd(1).You should explicitly state the buffer size, so trydd if=/dev/sda of=/dev/sdb bs=16MIIRC, the default buffer size is only 512 bytes. The command above sets it to 16 megabytes. You could try something smaller (e.g. bs=1M) but you should use more than the default (especially on recent disk hardware with sectors of 4Kbytes, i.e. Advanced Format). I naively recommend some power of two which is at least a megabyte.With the default 512 bytes buffer size, I guess (but I could be very wrong) that the hardware requires the kernel to transfer 4K for each 512 bytes block.Regarding rdsk, the sd(4) man pages say:At this time, only block devices are provided.  Raw devices have not         yet been implemented.Increase of dd's buffer size will give you more performance for read and write operations. Now all disks have hardware read/write buffer. But if you will increase dd's buffer size more than hardware buffer its performance will decrease because dd will read from first disk to buffer when second disk will have written all from its own hardware buffer. You need set bs option of dd command each time different value for different devices. 