FreeBSD连载(60):缺省内核配置选项
来源: 作者: 出处:综艺读书 2006-10-10缺省内核配置选项
通用内核的设置文件中包含了很多比较重要的设置选项,这里的设置选项 也是最常用的配置选项,为了编译出适合自己计算机的设置,就需要了解这个文件 中的设置选项。
|
|
|||
# # GENERIC -- Generic machine with WD/AHx/NCR/BTx family disks # # For more information read the handbook part System Administration -> # Configuring the FreeBSD Kernel -> The Configuration File. # The handbook is available in /usr/share/doc/handbook or online as # latest version from the FreeBSD World Wide Web server # <URL:http://www.FreeBSD.ORG/> # # An exhaustive list of options and more detailed explanations of the # device lines is present in the ./LINT configuration file. If you are # in doubt as to the purpose or necessity of a line, check first in LINT. # # $Id: GENERIC,v 1.143.2.2 1999/02/15 02:50:07 des Exp $ machine "i386" cpu "I386_CPU" cpu "I486_CPU" cpu "I586_CPU" cpu "I686_CPU" ident GENERIC maxusers 32
machine行定义了系统所使用的计算机体系结构,对于运行在个人 计算机平台上的FreeBSD,此参数值只能是i386,运行在其他平台上的BSD系统将使 用其他相应设置。注意由于这个配置参数中混用了字母和数字,因此需要用引号将 其括起来。这种情况在配置文件中经常会碰到,如果不使用双引号括起来,配置程 序就不能区分它是用于标识字符串还是用于数值设置,造成语法错误。
可以多个cpu参数描述了处理器类型,可以使用 ”I386_CPU” 、 “I486_CPU” 、 “I586_CPU” 、 “I686_CPU” 四种类型。 “I386_CPU” 是最低配置,缺 省的GENERIC配置文件中将这些类型全部列出,这使得这个通用内核在任何个人计算 机系统下都能正常运行,但最好根据处理器类型进行针对配置。由于处理器是向下兼 容的,但不能向上兼容,因此如果配置的参数高于计算机实际处理器类型,内核就不 能正常启动和工作。
对于586以上的处理器,各个兼容厂商的标记方法各不相同,因此必须小心选择 正确的处理器类型,以避免选择错误。可以使用系统启动时的检测信息来判断处理器的 类型:
# dmesg | grep ^CPU
ident用于标识内核,每个内核都应该具有自己的标识,GENERIC内核的 标识为GENERIC,而自己定制的内核可以在这一行中定义自己的标识。由于系统中可能 存在有多个内核,因此使用这个标识来帮助区分不同的内核。这个标识在系统启动时将 显示在启动屏幕上。
maxusers这个值并不直接限制FreeBSD的用户数目,而是定义了内核中的 一些非常重要的系统表格大小,这些表格会随系统中进程的增加和资源的被占用会逐渐 被填满,而系统中的用户和进程数量有一定的关系,因此这个值大概等于系统同时允许 的用户数目。但是当用户使用X Winodw或其他产生了大量进程和应用程序时,即使只有 很少的用户,系统表格也很容易被填满。因此这个值不能设置的太小。尤其是要将FreeBSD 用作服务器的时候,服务器会启动大量的进程,往往要增大这个值以提升系统对高负载的 支持能力。
系统的进程表的大小为:20+16*maxusers,去除系统启动时自动启动的一些守护 进程数目,因此可以大致估计出系统中空余的进程表项。进而估计出系统中还可以容纳的 进程数目,因此就可以根据需求改变这个值的设置。
options MATH_EMULATE #Support for x87 emulation options INET #InterNETworking options FFS #Berkeley Fast Filesystem options FFS_ROOT #FFS usable as root device [keep this!] options MFS #Memory Filesystem options MFS_ROOT #MFS usable as root device, "MFS" req'ed options NFS #Network Filesystem options NFS_ROOT #NFS usable as root device, "NFS" req'ed options MSDOSFS #MSDOS Filesystem options "CD9660" #ISO 9660 Filesystem options "CD9660_ROOT" #CD-ROM usable as root. "CD9660" req'ed options PROCFS #Process filesystem options "COMPAT_43" #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=15000 #Be pessimistic about Joe SCSI device options UCONSOLE #Allow users to grab the console options FAILSAFE #Be conservative options USERCONFIG #boot -c editor options VISUAL_USERCONFIG #visual boot -c editor config kernel root on wd0
MATH_EMULATE选项是一个x87浮点运算模拟器,当计算机中没有x87协处理 器时才需要使用。当前586级以上处理器的处理器内部均已集成了浮点运算器件,因此除非 使用386芯片或部分低档486芯片,内核配置并不需要这种模拟功能。此外,另一个具有相 同功能的选项为GPL_MATH_EMULATE,这个选项性能更好,只是它使用GNU的数学函 数代码,而GNU公用许可比BSD许可要求更严格。因为这个版权的原因,缺省使用 MATH_EMULATE,这保证FreeBSD可以只以二进制形式向外发布,而不违反GNU许可。 由于两个选项功能相同,只能任选一种,不能同时使用这两个选项。
INET选项定义了基本的TCP/IP支持,由于FreeBSD是网络操作系统,因此这 是最基本的选项。
FFS为BSD快速文件系统,即UFS文件系统,这是FreeBSD使用的基本文件系 统。FFS_ROOT用于在UFS系统上启动系统, 允许将UFS文件系统用作根文件系统。 由于UFS是FreeBSD使用的最基本的文件系统,因此应该设置FFS_ROOT,以使系统能够从磁盘 上正常启动。
NFS为Sun公司开发的网络文件系统,它是Unix之间共享文件系统一种事实标 准。NFS文件系统也可以用作根文件系统,这通过NFS_ROOT选项进行定义,使得可以 配置FreeBSD无盘工作站,无盘的FreeBSD系统可以用于专用X终端等特殊场合。
"CD9660"为ISO 9660 格式的CD-Rom文件系统,使用它访问CD-Rom上的文件系 统。"CD9660_ROOT"使得可以用光盘作根文件系统。
MFS为内存映射文件系统,可以将内存映射为文件系统,改善文件系统的性能, 当然这只适合有大量物理内存和交换空间的系统。也可以使用mfs类型来将交换分区安装到某 个目录上,保存一些临时文件。例如,系统的交换分区为wd0s3b,那么可以使用 “mount -t mfs /dev/wd0s3b /tmp” ,将交换分区安装到/tmp目录上。由于tmp是临时目录, 被程序用来交换数据,使用mfs文件系统能提高访问速度,这是拥有大量内存的计算机使用 mfs较常用的方式。MFS_ROOT用于将内存映射文件系统用作根文件系统,FreeBSD的安 装软盘就是使用的这种根文件系统,此外,使用MFS_ROOT也用于将FreeBSD系统用作专用防火 墙的嵌入式操作系统。
当安装了系统源代码之后,可以很容易生成能运行在一张软盘上的FreeBSD系统,叫做 PicoBSD,它主要被用做路由器、防火墙等专用服务器等。
MSDOSFS选项定义了msdos的fat文件系统,这不是必要的文件系统选项,使用它 来访问本地硬盘上的msdos文件系统。如果要访问软盘上的msdos文件系统,使用mtools软件更 为方便。
PROCFS是一个伪文件系统,它被安装到/proc目录,用于访问与相应的进程相关 的信息,一些系统程序如ps,使用它来获得进程的信息。
此外,"EXT2FS"选项为Linux所使用Ext2fs类型的文件系统,如果用户的计算机 上还运行着Linux,并希望使用FreeBSD访问本地硬盘上的Linux文件系统,就需要这个选项。
FreeBSD 2.x以后版本是从4.4BSD发展来的,但FreeBSD 1.x是来自于4.3BSD的。4.3BSD是 一个非常重要的BSD版本,很多应用程序也是依照4.3BSD开发的。因此需要使用这个"COMPAT_43" 选项保持和基于4.3BSD(包括FreeBSD 1.x)应用程序的兼容性。
SCSI设备在设置时需要一定的延迟时间,以便使SCSI控制卡能正确的和SCSI设备通信。因 此需要定义SCSI_DELAY=15000选项,与其他选项不同,这个选项为数值设置,使用了赋值 符号和数字。这个值的单位为毫秒
UCONSOLE选项使用户能接管console,通常在使用X Window时比较有用,这样就能在 X Window下接管console输出的与系统相关的信息。FAILSAFE选项使得配置程序对待内核更 为谨慎和保守,从而增加了系统的安全性。
USERCONFIG和VISUAL_USERCONFIG这两个选项使用户可以在启动时进入内核 参数设置程序UserConfig,配置硬件参数。USERCONFIG参数只提供基本命令行配置功能,而 VISUAL_USERCONFIG进一步提供全屏的编辑功能。
config行指定内核文件名及其位置,它指定内核名为kernel,并且内核
更多内容请看Freebsd安装/配置 Freebsd开发/调试 Freebsd频道专题,或进入讨论组讨论。
·服务器配置专栏 (8912篇文章)
·FreeBSD系统安全管理 (7310篇文章)
·全面解析 Linux2.6内核 (525篇文章)
·FreeBSD使用教程 (5218篇文章)
·Freebsd频道 (618篇文章)
·FreeBSD系统安装 (178篇文章)
·FreeBSD系统的使用 (83篇文章)
·Freebsd安装/配置 (192篇文章)
·Freebsd优化/安全 (77篇文章)
·在FreeBSD4.x中制作启动菜单 12-12
·在FREEBSD 5中使用MRTG画图 12-07
·浅谈FreeBSD 5.2常用操作的改变 12-02
·FreeBSD如何通过代理上网更新 11-21
·拿刀砍才能进freebsd系统的修复方法 10-27
·FreeBSD新手建议 10-14
·CERT? Advisory CA-2003-25 Buffer Overflow in Se 10-12
·FREEBSD下使用crunch集成编译程序 10-10
·FreeBSD下配置IPSec:WinXP------FreeBSD 10-10




