Ddを使用して、大容量(750GB)ディスクを外部USBディスクにバックアップします。
リダイレクトまたはパイピングを使用する必要がありますか?どちらがより効率的ですか?または違いはありますか?
また、最適なブロックサイズは何ですか?ここでUSBがボトルネックになる可能性があります。
dd if=/dev/sda bs=1M | gzip -c > /mnt/sdb1/backups/disk.img.gz
gzip -dc /mnt/sdb1/backups/disk.img.gz | dd of=/dev/sda bs=1M
対
dd if=/dev/sda bs=1M | gzip -c | dd of=/mnt/sdb1/backups/disk.img.gz
dd if=/mnt/sdb1/backups/disk.img.gz | gzip -dc | dd of=/dev/sda bs=1M
ありがとう。
dd
やpipeを使用する必要はまったくありません。
</dev/sda gzip >/mnt/sdb1/backups/disk.img.gz
</mnt/sdb1/backups/disk.img.gz gunzip >/dev/sda
私は一度 ベンチマークを作成 し、dd
を使用すると、異なるディスク間のストレートコピーでcat
よりも遅いことがわかりました。この場合、パイプがdd
を含むソリューションをさらに遅くすることが期待されます。
よりシンプル:
gzip -c /dev/sda > disk.img.gz
gzip -dc /mnt/sdb1/backups/disk.img.gz > /dev/sda