Home -- Michael's Blog :: Just Do IT -- Manuals

8.5. 创建设备节点

注: 如果你正在使用FreeBSD 5.0或者更新的版本,你可以略过这节。因为这些版本的系统使用devfs(5) 透明的为用户分配设备节点。

几乎内核中的每个设备在/dev目录都有对应的``节点''。 些节点看上去是些规则文件,但事实上是程序在使用对应的设备时,与内核联系的进入点。 当你一开始安装操作系统时,可执行的外壳脚本/dev/MAKEDEV就创建了几乎所有支持的设备。 然而,它并不是建立所有设备,所以当你加入对新设备的支持时,注意确信对应的节点在这个目录下。 如果不是,就加入它们。这儿是一个简单的例子:

假定在内核中加入了IDE CD-ROM的支持。可以这样加入:

device acd0

这意味着你应当在/dev目录下找一些以acd0为起点的入口, 通常后面有一个字母,像是以c,或者r开头,表示这是一个``raw''设备。 如果那些文件不在那儿,就必须改变到/dev目录然后键入:

# sh MAKEDEV acd0

这些脚本完成后,你要在/dev目录下确认有acd0cracd0c等几个入口,这表示程序已经正确执行。

以下是加入声卡节点的例子:

# sh MAKEDEV snd0

注: 当创建完诸如声卡这样的设备节点时,如果其他人有权访问你的机器, 可能有必要在/etc/fbtab文件中添加这些节点来保护系统安全。 更多的信息参考fbtab(5)

依上述的简单程序,建立任何不在GENERIC里的硬件设备节点

注: 所有的SCSI控制器都使用一样的设备节点,所以你无须重新建立节点。 另外,网卡与SLIP/PPP虚拟设备并没有任何设备节点,所以你不必担心怎么建立节点。

Michael's Blog :: Just Do IT -- manuals