Jon*_*mar 24 storage dd bootable removable-storage
来自 Arch Linux Wiki:https : //wiki.archlinux.org/index.php/USB_flash_installation_media
# dd bs=4M if=/path/to/archlinux.iso of=/dev/sdx status=progress && sync[...]你不能错过同步到拔USB驱动器之前完成。
我想知道
dd与 optional 一起使用的命令status=progress:
tar -xzOf archlinux-2016-09-03-dual.iso | dd of=/dev/disk2 bs=4M status=progress && sync
Run Code Online (Sandbox Code Playgroud)
或pv用于进步
tar -xzOf archlinux-2016-09-03-dual.iso | pv | dd of=/dev/disk2 bs=4M && sync
Run Code Online (Sandbox Code Playgroud)
Ser*_*rge 34
在dd当其写入设备,所以数据的某些部分可能尚未写入到旁路内核磁盘高速缓存并不USB在坚持dd完成。如果USB在那个时候拔掉你的棒子,棒子上的内容USB就会不一致。因此,您的系统甚至可能无法从该USB棒启动。
Sync 将任何仍在缓存中的数据刷新到设备。
sync您可以使用fdatasync dd's 转换选项,而不是调用:
数据同步
在完成之前物理写入输出文件数据
在您的情况下,命令将是:
tar -xzOf archlinux-2016-09-03-dual.iso | \
dd of=/dev/disk2 bs=4M status=progress conv=fdatasync
Run Code Online (Sandbox Code Playgroud)
该conv=fdatasync品牌dd有效地调用fdatasync()系统调用在之前传输结束时dd退出(我选中此dd的来源)。
这确认dd不会绕过或刷新缓存,除非明确指示这样做。