当通常无法写入设备节点时,dd 如何操作?

当通常无法写入设备节点时,dd 如何操作?

现在,通常您的 USB 驱动器或其他设备上都会有一个分区,您只能将内容写入该分区。但是 dd 能够将内容写入分区之外,大概是写入 MBR。它是如何做到的?

答案1

在 Linux 中,分区设备节点(/dev/sda1、等)限制对指定分区的/dev/sdb4访问;但全磁盘设备(、 等)允许访问整个磁盘。分区工具(/dev/sda、、GParted 等)都适用于全磁盘设备,并且根据分区表类型和内容,可以写入磁盘上的几乎任何扇区。如果将实用程序应用于全磁盘设备,也可以通过使用、、和选项读取和写入磁盘上的任何扇区。(有关详细信息,请参阅手册页。)/dev/sdbfdiskgdiskddseekskipbscountdd

请注意,MBR 在本讨论中并不特殊,除非它是存储 MBR 分区表的扇区。在整个磁盘设备的上下文中,MBR 只是磁盘上的第一个扇区。因此,如果您使用 读取或写入整个磁盘设备,则ddMBR 将是读取或写入的第一个扇区(假设不使用seekskip选项)。整个磁盘设备允许访问全部但是,这还不包括磁盘的扇区,而不仅仅是 MBR。

答案2

这与 无关dd。设备由内核公开。只要您拥有必要的权限,您就可以对它们进行任何操作。

dd只需使用它们来完成其工作即可。

相关内容