内核配置文件定义了内核支持设备的类型,号码和特性以及一些内核配置选项。对i386来说, 内核配置文件在 /usr/src/sys/arch/i386/conf 目录。
请注意因为历史上的原因内核配置文件的名字全用大写字母, 所以很容易与其它文件区别:
代码: 全选
$ cd /usr/src/sys/arch/i386/conf/
$ ls
CARDBUS GENERIC_PS2TINY NET4501
CVS GENERIC_TINY SWINGER
DELPHI GENERIC_VERIEXEC SWINGER.MP
DISKLESS INSTALL VIRTUALPC
GENERIC INSTALL.MP files.i386
GENERIC.FAST_IPSEC INSTALL_LAPTOP kern.ldscript
GENERIC.MP INSTALL_PS2 kern.ldscript.4MB
GENERIC.MPDEBUG INSTALL_SMALL largepages.inc
GENERIC.local INSTALL_TINY majors.i386
GENERIC_DIAGNOSTIC IOPENER std.i386
GENERIC_ISDN LAMB
GENERIC_LAPTOP Makefile.i386
代码: 全选
$ cp GENERIC MYKERNEL
$ vi MYKERNEL
- 1. 在内核中删除或保留硬件设备的支持(例如, 如果你不用scsi设备也没有必要保留对其的支持支持。)
- 2. 启用或禁用内核功能(例如, 例如启用NFS客户端支持, 启用Linux兼容新支持...)
- 3. 调整内核参数。
dmesg(8) 命令的输出可用来检验那些行可禁用。所有类似这样的行:
代码: 全选
XXX at YYY
你还需测试一下内核配置文件中的选项一禁用不需要的。每个选项全带有一个简短的描述, 这些描述足以让你明白该选项的作用。 很多选项在手册 options(4) 里有更详尽的描述。你应该在CMOS clock里设置正确的本地时间。 例如:
代码: 全选
options RTC_OFFSET=-60
代码: 全选
$ cd /usr/pkgsrc/sysutils/adjustkernel
$ make install
代码: 全选
$ cd /usr/src/sys/arch/i386/conf
$ adjustkernel GENERIC > MYKERNEL