在我的SSD成像(来源和目的地是2个SSD),我得到12 5GBpm使用CloneZilla,而dd,我只有5 5GBpm。
是什么让Clonezilla比dd快得多?
发布于 2013-04-03 12:10:31
dd只是从块0读取到块99999并复制数据。
Clonezilla理解文件系统,并了解什么时候不需要复制(因为这是被删除的文件中的空空间或数据)。
一旦您知道不复制所有无用的数据,那么复制真正的数据就容易多了。
在网站页面中,“对于不受支持的文件系统,扇区到扇区的复制由dd在Clonezilla中完成。”
发布于 2013-04-03 13:57:40
这取决于克隆人用什么。
它根据分区的类型使用不同的工具,这些工具摘自他们的网站:
Based on Partclone (default), Partimage (optional), ntfsclone (optional), or dd to image or clone a partition. 它将按照通常的顺序使用它们来尝试和复制分区。dd是最后的手段,因为它只是逐扇区复制,并且没有任何基于分区的文件系统类型的优化。例如,克隆ntfs分区要比克隆hfs分区快得多(至少有一段时间没有使用旧版本的clonezilla ),因为没有内置的高效hfs+复制工具,而且它使用了dd。
发布于 2021-01-08 22:49:26
Clonezilla可以比dd更快,原因有很多。
我同意前面所述的两个答案。我将重申并在每一个答案的基础上更进一步。
假设每件事都是1:1的关系中,CloneZilla使用的是dd,而其他人使用的是dd而不是CloneZilla,那么我会说,这必须是dd的参数,因为假设硬件和软件是相同的,这将是唯一的区别。
一个参数是块大小。通常,较大的块大小可以更快地复制,但是有一个断点,仅仅选择最大的块大小并不总是有意义的。
dd if=/dev/sda of=/dev/sdb bs=<value>BS值如何提高速度:“d”中的“bs”选项真的能提高速度吗?
在这种情况下,这两种情况都不一定会复制空白扇区。这可能是性能差异中最大的问题。一旦复制了最后一个分区的结束,大多数用户可能不会停止克隆。他们可能会使用以下基本命令
dd if=/dev/sda of=/dev/sdb这不会在最后一个分区的末尾停止。
若要在最后一个分区末尾停止传输,请执行以下操作:
fdisk -l然后,复制源驱动器的最后一个分区的END列中的值。然后将count设置为等于该值。
dd if=/dev/sda of=/dev/sdb count=<'fdisk -l' END_column_last_parition_result> 一旦所有分区数据匹配,这将停止按字节顺序复制。分区内可能有空白数据,这将进一步降低性能。
如果可以的话,在运行dd之前,整理和缩小驱动器以删除分区中的空白。收缩将使分区更小,并允许您更快地复制,因为您不会复制空白区域。
请注意,当您这样做时,您必须在dd操作之后在目标驱动器上展开分区,以使空闲的未分配空间可用。
您可能还会看到性能上的差异,因为磁盘上可能有错误。
此外,参数"conv=sync“添加了填充,这增加了目标驱动器的数据消耗。它还使驱动器与源“不一样”。
如果从一个坏的驱动器复制是典型的使用conv=sync,没有错误。如果这个驱动器是好的,要么没有错误,要么不使用conv=就足够了。
所以,对于不好的驾驶,我会用这样的方法
dd if=/dev/sda of=/dev/sdb bs=512 count=<value> status=progress conv=sync,noerror为了一个好的
dd if=/dev/sda of=/dev/sdb bs=10M count=<value> status=progresshttps://serverfault.com/questions/495723
复制相似问题