10.4.配置文件
最后更新于
这有帮助吗?
最后更新于
这有帮助吗?
为了创建一个自定义内核配置文件并构建自定义内核,必须首先安装完整的 FreeBSD 源代码树。
如果 /usr/src/
目录不存在或为空,则说明源代码未安装。可以按照 中的说明通过 Git 安装源代码。
安装完源代码后,请查看 /usr/src/sys
目录的内容。该目录包含多个子目录,其中包括表示以下受支持架构的目录:amd64、i386、powerpc 和 sparc64。每个特定架构的目录只处理该架构的相关内容,其他代码则是所有平台通用的机器无关代码。每个受支持架构都有一个 conf 子目录,其中包含该架构的 GENERIC 内核配置文件。
不要直接编辑 GENERIC 文件。相反,应将文件复制并编辑复制的文件。命名约定是使用全大写字母的名称。在管理多台具有不同硬件的 FreeBSD 机器时,建议将其命名为机器的主机名。以下示例为 amd64
架构的 GENERIC 配置文件创建名为 MYKERNEL 的副本:
现在可以使用任何 ASCII
文本编辑器自定义 MYKERNEL。默认编辑器是 vi,但 FreeBSD 还安装了一个更适合初学者的编辑器,名为 ee。
内核配置文件的格式很简单。每行包含一个代表设备或子系统的关键字、一个参数和一个简短的描述。任何在 #
后面的文本都被视为注释并被忽略。要从内核配置中删除对某个设备或子系统的支持,请在表示该设备或子系统的行的开头加上 #
。对于你不理解的行,请不要添加或删除 #
。
警告
删除设备或选项的支持很容易导致内核损坏。例如,如果从内核配置文件中删除 驱动程序,使用
ATA
磁盘驱动程序的系统可能无法启动。如有疑问,最好将支持保留在内核中。
除了文件中提供的简短描述外,附加描述还包含在 NOTES 文件中,可以在该架构的 GENERIC 文件所在目录中找到。对于架构无关的选项,请参考 /usr/src/sys/conf/NOTES
。
技巧
完成自定义内核配置文件后,将备份副本保存到
/usr/src
之外的位置。还可以将内核配置文件保存在其他地方,并创建指向该文件的符号链接:
配置文件中可以使用 include
指令。这允许将另一个配置文件包含到当前配置文件中,使得相对于现有文件维护小的变化变得容易。如果只需要少量的额外选项或驱动程序,可以通过这种方法维护与 GENERIC 的差异,如下所示:
注意
要构建一个包含所有可用选项的文件,请以
root
用户身份运行以下命令:
使用这种方法,本地配置文件表示与 GENERIC 内核的本地差异。在执行升级时,除非使用 nooptions
或 nodevice
明确防止,否则 GENERIC 中新增的特性也会添加到本地内核中。有关配置指令及其描述的完整列表,请参阅 。