我使用 dd 将 iso 复制到 USB 驱动器。我有一个 SSD,因此读取速度非常快,但是我有一个 USB 2.0 驱动器,速度最高为 480 Mbps,但它显示复制速度为 404 MB/s,这是不可能的。我需要sync
在之后做dd
。我在 dd 中使用了同步标志,但没有帮助,我该怎么办?
$dd if=ubuntu-13.10-server-amd64.iso of=/dev/sdb bs=1M conv=sync,noerror
672+0 records in
672+0 records out
704643072 bytes (705 MB) copied, 1,74625 s, 404 MB/s
这是我的内核:
$ uname -a
Linux C3PO 3.11.0-18-generic #32-Ubuntu SMP Tue Feb 18 21:11:14 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
答案1
conv=sync
不激活同步输入或输出:
使用 NUL 填充每个输入块至 ibs 大小;与 block 或 unblock 一起使用时,使用空格而不是 NUL 填充
相反,你可能想尝试conv=fdatasync
:
在完成之前物理地写入输出文件数据
更直观的当然是oflag=sync
:
dsync – 使用同步 I/O 来传输数据
同步 – 同样,也适用于元数据
来源:man 1 dd