我正在创建实时USB,但并不能完全理解:将文件(甚至文件系统)直接复制到设备节点(而不是文件系统)时会发生什么?
我正在创建实时USB,但并不能完全理解:将文件(甚至文件系统)直接复制到设备节点(而不是文件系统)时会发生什么?
Answers:
外壳将打开设备/dev/sdX
。该cat
命令的所有输出(最终是的内容debian.iso
)都直接写入该设备。
最终结果是debian.iso
逐字节写入底层磁盘的开头/dev/sdX
。
实际上,设备节点使存储介质的低级内容看起来像一个文件。您正在写入此“文件”,因此正在写入存储介质。这种哲学被称为“一切都是文件”,被认为是Unix系统的定义特征之一。
dd
让您更好地控制块的大小,默认值取决于实现(例如1或512字节)。这样,dd
您就可以为块设备选择更好的大小,例如4096字节。
dd
影响性能,但不会影响读取和写入的数据。dd
块大小与CD块大小或文件系统块大小之间没有关系。几兆字节通常可以为您提供最佳性能,但cat
速度可能比更快dd
。
dd if=debian.iso of=/dev/sdX
吗?