![macOS Sierra 上的 `dd` 性能存在问题吗?](https://linux22.com/image/1512136/macOS%20Sierra%20%E4%B8%8A%E7%9A%84%20%60dd%60%20%E6%80%A7%E8%83%BD%E5%AD%98%E5%9C%A8%E9%97%AE%E9%A2%98%E5%90%97%EF%BC%9F.png)
我不确定我是不是唯一遇到此问题的人,但当我在升级到 macOS Sierra 后尝试刷新磁盘映像时,我得到了非常糟糕的表现。
当我使用以下命令闪出磁盘映像时,我获得大约 300-500k 的写入速度:
$ unzip -p /path/to/image | pv | sudo dd bs=32m of=/dev/rdisk2
1.31GiB 0:55:37 [ 424KiB/s] [ <=> ]
^C
0+4279363 records out
2191033856 bytes transferred in 5218.495041 secs (419859 bytes/sec)
有趣的是,如果我在虚拟机(Ubuntu 12.04)中使用完全相同的 SD 卡、磁盘映像和 USB 读取器执行完全相同的操作,我会获得更快的性能。
$ unzip -p /path/to/image | pv | sudo dd bs=32M of=/dev/sdc
3.73GB 0:02:30 [25.4MB/s] [ <=> ]
0+55333 records in
0+55333 records out
4004511744 bytes (4.0 GB) copied, 150.572 s, 26.6 MB/s
这曾经在 El Capitan 上运行良好。
我也尝试过使用内置 SD 卡读卡器进行刷新,但性能大致相同。
答案1
考虑测试不同的块大小以获得最佳性能。
对于以 4096 块边界格式化的现代拇指驱动器,使用 bs=4096 是可行的,而早期的拇指驱动器使用 512。
另外使用 /dev/rdiskX 设备。