我想通过100 Mbit / s的线路备份从网络中的计算机到同一网络中的另一台计算机的路径。为此,我做了
dd if=/local/path of=/remote/path/in/local/network/backup.img
这给了我一个非常低的网络传输速度,大约50至100 kB / s,这将是永远的。因此,我停了下来,决定尝试动态地将其压缩,以使其更小,从而减少转移的金额。所以我做了
dd if=/local/path | gzip > /remote/path/in/local/network/backup.img.gz
但是现在我得到了大约1 MB / s的网络传输速度,所以速度提高了10到20倍。注意到这一点之后,我在几个路径和文件上对此进行了测试,并且始终保持相同。
为什么dd
通过管道gzip
传输还会将传输速率提高很多,而不是仅将流的字节长度减少很多?我原本希望传输速率甚至会有小幅下降,这是由于压缩时CPU消耗较高,但是现在我得到了双倍的收益。不是说我不开心,而是想知道。;)
dd
正在以1MB / s的速度输出...进入等待gzip
管道。它与块大小无关。