3.4./dev目录

/dev目录包含所有设备的特殊设备文件。设备文件在安装期间创建,稍后通过 /dev/MAKEDEV 脚本创建。/dev/MAKEDEV.local 是系统管理员编写的脚本,用于创建本地独有的设备文件或链接(即那些不属于标准 MAKEDEV 的文件,例如某些非标准设备驱动程序的设备文件)。

以下列表绝非详尽无遗,也不够详细。 许多这些设备文件需要内核中编译的支持才能用于硬件。 阅读内核文档以查找任何特定设备的详细信息。

如果您认为还有其他设备应该包含在此处但未包含,请告诉我。 我会尝试在下一个版本中包含它们。

/dev/dsp

数字信号处理器。 基本上,这构成了产生声音的软件和您的声卡之间的接口。 它是主节点 14 和次节点 3 上的字符设备。

/dev/fd0

第一个软盘驱动器。 如果您足够幸运拥有多个驱动器,那么它们将按顺序编号。 它是主节点 2 和次节点 0 上的字符设备。

/dev/fb0

第一个帧缓冲设备。 帧缓冲是软件和图形硬件之间的抽象层。 这意味着应用程序不需要了解您拥有哪种硬件,而只需了解如何与帧缓冲驱动程序的 API(应用程序编程接口)通信,该 API 已明确定义和标准化。 帧缓冲是主节点 29 和次节点 0 上的字符设备。

/dev/hda

/dev/hda是主 IDE 控制器上的主 IDE 驱动器。/dev/hdb是主控制器上的从驱动器。/dev/hdc,和/dev/hdd分别是辅助控制器上的主设备和从设备。 每个磁盘都分为分区。 分区 1-4 是主分区,分区 5 及以上是扩展分区内的逻辑分区。 因此,引用每个分区的设备文件由几个部分组成。 例如/dev/hdc9引用辅助 IDE 控制器上的主 IDE 驱动器上的分区 9(扩展分区类型内的逻辑分区)。 主节点号和次节点号有些复杂。 对于第一个 IDE 控制器,所有分区都是主节点 3 上的块设备。主驱动器hda位于次节点 0,从驱动器hdb位于次节点 64。 对于驱动器内的每个分区,将分区号添加到驱动器的次要次节点号。 例如/dev/hdb5是主节点 3,次节点 69 (64 + 5 = 69)。 辅助接口上的驱动器以相同的方式处理,但主节点为 22。

/dev/ht0

第一个 IDE 磁带驱动器。 后续驱动器编号为ht1等等。 它们是主节点 37 上的字符设备,对于ht0从次节点 0 开始,对于ht1等等从次节点 1 开始。

/dev/js0

第一个模拟摇杆。 后续摇杆编号为js1, js2等等。 数字摇杆称为djs0, djs1等等。 它们是主节点 15 上的字符设备。 模拟摇杆从次节点 0 开始,最多可达 127(即使对于最狂热的游戏玩家来说也足够了)。 数字摇杆从次节点 128 开始。

/dev/lp0

第一个并行打印机设备。 后续打印机编号为lp1, lp2等等。 它们是主模式 6 和次节点(从 0 开始并按顺序编号)上的字符设备。

/dev/loop0

第一个环回设备。 环回设备用于挂载未位于其他块设备(如磁盘)上的文件系统。 例如,如果您希望挂载 iso9660 CD-ROM 映像而不将其刻录到 CD,那么您需要使用环回设备来执行此操作。 这通常对用户是透明的,并由 mount 命令处理。 请参阅 mountlosetup 的手册页。 环回设备是主节点 7 上的块设备,次节点从 0 开始并按顺序编号。

/dev/md0

第一个元磁盘组。 元磁盘与 RAID(独立磁盘冗余阵列)设备相关。 请参阅 LDP 上最新的 RAID HOWTO 以了解更多详细信息。 可以在 http://www.tldp.org/HOWTO/Software-RAID-HOWTO.html 找到。 元磁盘设备是主节点 9 上的块设备,次节点从 0 开始并按顺序编号。

/dev/mixer

这是 OSS(开放声音系统)驱动程序的一部分。 有关更多详细信息,请参阅 http://www.opensound.com 上的 OSS 文档。 它是主节点 14,次节点 0 上的字符设备。

/dev/null

位桶。 一个黑洞,您可以在其中发送数据,使其永远不会再被看到。 发送到/dev/null的任何内容都会消失。 例如,如果您希望运行命令但不希望终端上出现任何反馈,这将非常有用。 它是主节点 1 和次节点 3 上的字符设备。

/dev/psaux

PS/2 鼠标端口。 它是主节点 10,次节点 1 上的字符设备。

/dev/pda

并行端口 IDE 磁盘。 这些命名方式与内部 IDE 控制器上的磁盘类似 (/dev/hd*)。 它们是主节点 45 上的块设备。 次节点在此处需要更多解释。 第一个设备是/dev/pda,它位于次节点 0 上。 通过将分区号添加到设备的次要编号,可以找到此设备上的分区。 每个设备最多限制为 15 个分区,而不是 63 个(内部 IDE 磁盘的限制)。/dev/pdb次节点从 16 开始,/dev/pdc在 32 和/dev/pdd在 48。 因此,例如,对于/dev/pdc6次节点号为 38 (32 + 6 = 38)。 此方案将您限制为 4 个并行磁盘,每个磁盘有 15 个分区。

/dev/pcd0

并行端口 CD-ROM 驱动器。 这些从 0 开始编号。 所有都是主节点 46 上的块设备。/dev/pcd0位于次节点 0 上,后续驱动器位于次节点 1、2、3 等上。

/dev/pt0

并行端口磁带设备。 磁带没有分区,因此这些只是按顺序编号。 它们是主节点 96 上的字符设备。 次节点号从/dev/pt0的 0 开始,/dev/pt1的 1 开始,依此类推。

/dev/parport0

原始并行端口。 大多数连接到并行端口的设备都有自己的驱动程序。 这是一个直接访问端口的设备。 它是主节点 99 和次节点 0 上的字符设备。 第一个之后的后续设备按顺序编号,次节点递增。

/dev/random/dev/urandom

这些是内核随机数生成器。/dev/random是一个非确定性生成器,这意味着无法从前面的数字中猜测出下一个数字的值。 它使用系统硬件的熵来生成数字。 当它没有更多熵可使用时,它必须等待直到收集到更多熵,然后才允许从中读取更多数字。/dev/urandom的工作方式类似。 最初,它也使用系统硬件的熵,但是当没有更多熵可用时,它将继续使用伪随机数生成公式返回数字。 对于诸如加密密钥对生成之类的关键目的,这被认为不太安全。 如果安全是您的首要考虑因素,请使用/dev/random,如果速度更重要,那么/dev/urandom工作正常。 它们是主节点 1 上的字符设备,对于/dev/random次节点为 8,对于/dev/urandom.

/dev/sda

第一个 SCSI 总线上的第一个 SCSI 驱动器。 以下驱动器的命名方式与 IDE 驱动器类似。/dev/sdb是第二个 SCSI 驱动器,/dev/sdc是第三个 SCSI 驱动器,依此类推。

/dev/ttyS0

第一个串行端口。 很多时候,它是用于将外部调制解调器连接到系统的端口。

/dev/zero

这是一种获取多个 0 的简单方法。 每次您从此设备读取时,它都会返回 0。 这有时很有用,例如,当您想要一个固定长度的文件,但并不真正在意它包含什么时。 它是主节点 1 和次节点 5 上的字符设备。