我正在学习bash
,并与周围的许多人来说,所有的困惑是什么许多不同的方式有从/一(零写入驱动器或传输数据shred
VS dd
VS pv
VS cat
VS tee
等),我已经不堪重负。
就目前而言,我不情愿地选择了dd
它,因为它似乎是两种用途的最佳命令行选项。鉴于此,我想确保我尽可能高效地使用它。
据我所知,默认情况下dd
,块大小为512字节,并且增加了这个值,例如:
dd if=/dev/zero of=/dev/sdX bs=3M status=progress
...会使它写出更大的块并且这样做的次数更少,因此可以更快地运行。
但是如果简单地设置更大的块大小会使命令运行得更快,那么阻止我使用bs=3G
什么呢?这样做有什么缺点,如果有的话?Linux超级用户推荐使用的最佳块大小是多少?
3
只是有一个更大的块大小不是答案,最有效的块大小可以通过硬件,RAM,处理器,其他应用程序等...有一篇文章和脚本用于测试/找到正确的组合,我会看我能否找到链接。
—
acejavelin
啊......这里......不是真正的答案,但它可能会让你走上正确的轨道... blog.tdg5.com/tuning-dd-block-size
—
acejavelin
@Vlastimil:如果你使用它真的没什么区别
—
dirkt
dd
,pv
或者cp
:它们都运行得和硬件允许的一样快。并且请不要像“dd过时的磁盘归零”那样传播废话:dd
是一种特殊用途的特殊工具,虽然它已经陈旧,但“过时”与此无关。您可以使用在您的方案中最适合的任何工具。
“围绕着许多不同的方式存在所有混淆......” - 你可能会发现这个问题很有趣:用于编写图像文件的dd和cat有什么区别?
—
卡米尔·麦克奥霍斯基