手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

FreeBSD手册——配置FreeBSD内核

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

指定您所拥有的CPU 类型。假如您不能确定您的CPU 类型,您能够通过/var/run/dmesg.boot
文档中的您的启动信 息来确定。

freebsd对386级别的cpu的支持代码仍然存在于内核源代码中,但默认情况下他并未启用
(STABLE 和CURRENT 版都是)。这意味着要在一386机器上安装freebsd,有以下方式可行:

* 先安装一个旧版的freebsd,然后从源代码进行系统重建,具体方法见第9章第3节.

* 通过使用预编译的/usr/obj,在新机型上编译userland和内核,而安装在386机器上。
(具体方法21章5节).

* 创建您自己的包含对386cpu支持的FreeBSD安装光盘这几种方法中,第一种是最简单的,
但是他需要您的386上有比较大的空闲磁盘空间,而这一点比较难满足。

The first of these options is probably the easiest of all, but you will
need a lot of disk space on a 386-class machine which may be difficult to
find.

ident GENERIC

ident 是个内核的标识符。您应该把他改成想给内核取的名字,例如,假如一直是按照
以上的说明做的,那 么该改为MYKERNEL。放在ident 后的参数,将在您用这个内核启动
时显示在屏幕上。给新内核起个和通常核( 比如您想建实验性质的kernel)不同的名称
是个不错的做法。
注意:象machine 和cpu 这两个配置。假如您的内核名称包含数字,请记得用双引号把
他括起来。内核名称将会使用-D 参数传给编译器,所以不要用像DEBUG 或是其他可能干扰
编译器的机器、CPU 名称,如vax 。

maxusers n

maxusers值的大小定义了重要的系统表的大小。这个数值大概地和您机器的同时使用者的数量相等。

从freebsd4。5起,假如他被配置为0,那么系统会自动进行调整。在5。x中,假如这个值没有指定,
那么他默 认是0。假如您使用的4。5之前的版本,或您想自己定义他的大小,那么他起码要配置
为4 个以上,特别是 您要执行X Window 或是编译程式。因为maxusers 值决定了系统最大可同时
运行的进程数(processes),算 法是20 16 * maxusers 。假如您配置maxusers 值是1,则您
的系统只能同时存在36 个进程 ,包括18 个(或更多)系统启动要占去的进程数; 假如您使用了
X Window ,则又要用至少15 个进程。甚至阅读一个man page 也会使用九个processes 来进行过滤、
解压缩、然后显示文档。配置maxusers=64 ,则系统能够同时有1044 个processes ,这样差不多对
任何应用都足够的了 。当您执行程式时,出现“proc table full ”这样的错误信息,或您要建
一个同时会有很多人来访问的网站(如ftp.freebsd.org) 时,您就要增加这个配置的值,然后重新
编译内核。

注意: maxuser 这个参数并不限制能够登陆您系统的用户的数目。他只是配置一些表的大小来
合理的评估系统 可能的最大用户数,连同他们每个人所能有的最多的进程数。有一个
关键词(pseudo-device)的值则真的限 制了能够同时远程连接(remote logins) 的
人数,如:pseudo-device pty 16 。

# Floating point support - do not disable.
device npx0 at nexus? port IO_NPX irq 13

npx0 是连接FreeBSD 中浮点运算处理器的一个接口。不论您有硬件的浮点运算处理器
还是使用软件进行仿真,都需要这个配置。这个配置是不可选的。

# Pseudo devices - the number indicates how many units to allocate.
pseudo-device loop # Network loopback

这是个通用的TCP/IP 接口。假如您用telnet 或ftp 连到localhost( 等同于
127.0.0.1) ,则该连接会通过这个虚拟设备连回来。这是个必需的配置。

以下内容或多或少都有选项。他们下面或之后的信息可供参考。

#To statically compile in device wiring instead of /boot/device.hints
#hints "GENERIC.hints" #Default places to look for devices.

在freebsd5。x及其更新版本中,文档device.hints用于配置设备驱动程式参数。默认
情况下 loader将字系统 启动时检查/boot/device.hints文档。假如直接把这些隐含
参数内容编译到内核中,那么就没有必要在/boot 中创建一个device.hints。

#makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols

为节约所需空间,通常freebsd内核构建进程并不产生从编译到链接产生目标内核过程
中的调试信息。假如您 正测试 -CURRENT 分支的内核或您想研发属于自己的
freebsd内核,那您就不该注销掉这行。他使用 -g选 项,使得代码在被gcc处理
时产生调试信息。假如您在使用传统的方法构建内核,那么config -g 选项也可
实现该功能 (具体情况参考9章3小节).

options MATH_EMULATE #Support for x87 emulation

假如您的电脑没有浮点运算处理器(386 或486SX) ,这行将使得内核提供软件仿真
的浮点运算处理器。假如 您用的是486DX 或是386SX 、486SX( 还加装了387 、487
芯片)或更高的(Pentium 、Pentium II 等)则不需 要这行配置。

注意: 这个仿真的运算处理器并不是很精确。假如您没有浮点运算器,但需要较
高的精度,您能够改用GPL_MATH_EMULATE 参数,这将会使用GNU 的浮点运算
仿真器。因为GNU 使用许可的关 系,这个仿真器不是系统默认值。

在5.x中,运算模拟器默认并不被支持,因为在旧的cpu中,没有实际浮点运算器的
是相当少见的。在许多情 况下,并不被GENERIC 内核支持,除非使用了附加选项。

options INET #InterNETworking

网络支持。即使您不打算连上网络,也要留着这个选项。对于大量的程式,需要至少
有个loopback网络(例如 :用pc创建网络链接)。所以这个选项基本上是强制的。

options INET6 #IPv6 communications protocols

这个启用IPv6 通讯协议

options FFS #Berkeley Fast Filesystem
options FFS_ROOT #FFS usable as root device [keep this!]

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!