| FreeBSD handbook中文版 9 配制FreeBSD 的内核 |
 |
作者: 来源: 日期:2007-6-18 10:38:04 点击次数: |
|
支持多种USB 设备。更多有关FreeBSD 支持的设备请参考 /usr/src/sys/i386/conf/LINT。 9.5 建立设备的节点 几乎内核中的每个设备在/dev 目录下都有对应的节点。这些节点看上去是些规则文件, 但事实上是程序在使用对应的设备时,与内核联系的进入点。当你一开始安装操作系统时, 那些可执行的外壳脚本/dev/MAKEDEV 就创建了几乎所有支持的设备。然而,它并不是建立 所有设备,所以当你加入对新设备的支持时,注意确信对应的节点在这个目录下。如果不是, 就加入它们。这儿是一个简单的例子: 确信在内核中加入了IDE CD-ROM 的支持。可以这样加入:device acd0 这意味着你应当在/dev 目录下找一些以acd0 为起点的入口,通常后面有一个字母,象 c 或以r 开头表示这是一个raw 设备。那些文件不在那儿,必须改变/dev 目录然后键入: # sh MAKEDEV acd0 当这些脚本完成后,你要找一下在/dev 目录下有acd0c 和racd0c 等几个入口,表示程 序已经正确执行。 以下是加入声卡节点的例子: # sh MAKEDEV snd0 注意:当创建完诸如声卡这样的设备节点时,如果其它人有权访问你的机器,可能有 必要在/etc/fbtab 文件中添加这些节点来保护系统安全。可看一下fstab 的联机手册以了 解更多信息。 依上述的简单程序,建立任何不在GENERIC 里的硬件设备节点。 注意: 所有的SCSI 控制器都使用一样的设备节点,所以你无须重新建立节点。另外, 网卡与SLIP/PPP 虚拟设备并没有任何设备节点,所以你不必担心怎么建立节点。 9.6 如果出现问题怎么办? 在定制一个内核时,可能会出现四种问题。它们是: 配置失败 第17 页FreeBSD 使用手册 当你在你的内核描述中看到config 命令失败,你可能在某个地方发生了一个小错误。 幸运的是,config 会显示出错的那一行的行号,你可以用vi 编辑器做修改。例如, 如果你看到:config:line 17:syntax error 你可以在vi 中用命令模式输入17G 来跳到17 行。比较GENERIC 内核或其它参考资料, 以确定你打对关键字。 编译错误 如果编译失败,通常会在你的内核描述中提示一个错误,但config 并没有找出错误。 另外,查看一下你的配置信息,如果你仍然无法解决这个问题,可以把你的内核配置 信息发邮件到FreeBSD 普通问题邮件列表<freebsd-questions@FreeBSD.org>,它将很快 地被解决。 内核无法启动 如果你的新内核无法启动,或无法识别你的硬件,不要担心!幸运的是,BSD 有一个 解决复杂内核错误的很好机制。从FreeBSD 的启动loader 中,选择一个你要启动的 内核。当配置一个内核时,记得在手头保留一个能正常启动的内核是个好主意。 在用一个好的内核启动后,你可以检查一下你的配置文件,再设法重新建立一个内核。 一个有帮助的文件是/var/log/messages 文件,它记载了每个成功启动的所有内核信 息。同样,dmesg 命令会列出当前启动中的内核信息。 注意:你在编译内核时,确信保留着一个GENERIC 或以其它名字命名的内核。你不能 仅依靠kernel.old,因为当你安装一个新内核时,kernel.old 会被最后一次安装的内 核所覆盖。所以,尽快将当前正常工作的内核移到不能正常工作的内核,你可以用ps 命令查一下。解开编译安装内核文件的正确命令是: #chflags noschg /kernel 另外,如果你要设定内核或其它文件的访问限制,以至它不能被移动或修改,可以用 下面的命令: #chflags schg /kernel 内核工作,但ps 根本就不工作! 如果你安装了一个不同版本的内核到系统,例如,在3.x 系统中安装了4.x 内核,许 多系统内建的命令象ps 和vmstat 会根本不工作。你必须重编译libkvm 库以及这些 上一篇:FreeBSD handbook中文版 8 用户和基本的帐户管理 下一篇:FreeBSD handbook中文版 10 安全 |
|
|
 |
| 北京总部: 4006-505-808 |
| 上 海 部: 4006-505-808 |
| 深 圳 部: 4006-505-808 |
| 浙 江 部: 4006-505-808 |
| 广 州 部: 4006-505-808 |
| 重 庆 部: 4006-505-808 |
| 南 京 部: 4006-505-808 |
| 其它地区: 4006-505-808 | |
|
 |
|