说明
第一部份: 开始到options设定之前
第二部份: 大部分的options 设定(除了SMP之外)
第三部份: SMP、软碟、主机板及IDE介面 设定
第四部份: SCSI装置 设定
第五部份: RAID、滑鼠、键盘、显示卡、电源管理、浮点运算、console 设定
第六部份: PCMICA、COM port、平行埠 设定
第七部份: PCI 及ISA 网卡 设定
第八部份: 虚拟装置、封包过滤器、USB的装置 设定
---------------------------------------------------------------------------- [第一部份] 开始到options设定之前 ---------------------------------------------------------------------------- machine i386 // 机器的内部结构,除了i386 还有 alpha 及pc98我们现今看到的多是i386 #cpu I386_CPU #cpu I486_CPU #cpu I586_CPU cpu I686_CPU // CPU的型态...若您不知道您的CPU型态为何.. >_< it's ok ...FreeBSD will help you ...^^ 用 dmesg | more 指令(此指令显示开机资讯),可以看到您的CPU型态 这是我从dmesg中看到的讯息.... CPU:Pentium II / Pentium II Xeon / Celeron (350.80-MHz 686-class CPU) 所以我将其他的3个型态#掉,只留下I686_CPU ident OHAHA // kernel的识别,通常我们用host name的大写..所以我的是OHAHA maxusers 64 // 这个数值大约等於你希望同时能够登入机器的人数 在正常的情况下,如果您要跑X-Window的话,最小值是4 正确的说,此代表process的最大值有关maximum=20+16*maxusers 正常来说,用64已经足够 // 注意:maxusers不是能够login的限制。 ---------------------------------------------------------------------------- [第二部份]大部分的options 设定(除了SMP之外) ---------------------------------------------------------------------------- #makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
#options MATH_EMULATE #Support for x87 emulation // 模拟数学浮点运算器 除非您的机器是386或486SX之前的型号,不然您可以将此行 # 掉 因为FreeBSD在这方面的模拟并不很精确,若您要求精确度的话.. 将 MATH_EMULATE 改成 GPL_MATH_EMULATION 改用GNU 的模拟数学浮点运算器 options INET #InterNETworking- // Networking support ,即使您没有打算要连上网路也请保留,因为有些程式会用到loop
#options INET6 #IPv6 communications protocols // IPv6 的通讯协定 (因为尚未启用所以disable)
options FFS #Berkeley Fast Filesystem options FFS_ROOT #FFS usable as root device [keep this!] // 以上两项,是基本的硬碟档案系统。若您要用硬碟开机...keep this !!
options MFS #Memory Filesystem options MD_ROOT #MD is a potential root device // memory-mapped档案系统,如果您有很大的swap空间,您想要好好的利用的话...keep this 如果要使用的话,通常我们会将他挂在(mount)在/tmp 这个地方, 因为这里有许多程式将暂存资料存放在此。 要如此的话...请在/etc/fstab中的swap部分加入(或者说更新): # Device Mountpoint FStype Options Dump Pass# /dev/ad0s1b /tmp mfs rw 0 0 options NFS #Network Filesystem options NFS_ROOT #NFS usable as root device, NFS required // 网路档案系统,除非您想经由TCP/IP的方式,将UNIX的系统分割区挂上,否则 # 掉 因为本网站之後有讲到NFS方面...所以留着...^^ options MSDOSFS #MSDOS Filesystem // MSDOS档案系统,除非您要在开机时就挂上此分割区,否则您可以 # 掉
options CD9660 #ISO 9660 Filesystem options CD9660_ROOT #CD-ROM usable as root, CD9660 required // ISO9660档案系统,若您没有光碟机,或者不常mount光碟机,则可以 # 掉 options PROCFS #Process filesystem // the process 档案系统,为假想的档案系统,挂(mount)在/proc, 此允许 ps 指令显示process的资讯
options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] // 与4.3BSD的相容性[keep this!] options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI // 使kernel暂停15秒,去搜寻您机器上的SCSI装置。 这个您应该看过吧...就是开机时令你觉得很烦很慢的那个... 您可以将此数值减少..以加快开机速度。
options UCONSOLE #Allow users to grab the console // 让您能够抓取console的画面...这个对 X 的使用者比较有用...
options USERCONFIG #boot -c editor // 允许您从开机选单中启动组态编辑器(configuration editor) 几乎用不到
options VISUAL_USERCONFIG #visual boot -c editor // 同上...只不过是视觉化的...几乎用不到
options KTRACE #ktrace(1) support // 启动kernel process tracing(追踪系统程序),在debug时很有用...一般人还是用不到...@@"
options SYSVSHM #SYSV-style shared memory // 此选项提供给System V 型态的shared memory ...,最常用此选项功能的是 X 中的XSHM 若您要使用 X 请务必加上,此外许多有关图形的程式也会因此选项功能而加速。 又者...big5con(中文console)也需要此选项。
options SYSVSEM #SYSV-style semaphores // 支援System V 的信号(semsphores),只占用少量的kernel大小
options SYSVMSG #SYSV-style message queues // 支援System V 的讯息(messages),只占用少量的kernel大小,BBS会用到此选项功能。
// 通常我们会将以上三种全部加上.....-__-||
options P1003_1B #Posix P1003_1B real-time extensions options _KPOSIX_PRIORITY_SCHEDULING // Real-time extensions added in the POSIX,某些应用程式会用到(star office)。
options ICMP_BANDLIM #Rate limit bad replies // 启动反应频宽限制的ICMP error,对於帮助拒绝packet攻击有所助益。 ---------------------------------------------------------------------------- [第三部份] SMP、软碟、主机板及IDE介面 设定 ---------------------------------------------------------------------------- # To make an SMP kernel, the next two are needed // 多CPU的支援 .... #options SMP# Symmetric MultiProcessor Kernel #options APIC_IO # Symmetric (APIC) I/O // 新版本的只要将此两项打开,系统会自动抓到...^^
device isa // 每个被FreeBSD支援的PC都有这一个....
device eisa // 若您有EISA的主机板..加上它,会自动侦测及设定所有EISA装置
device pci // 若您有PCI的主机板..加上它,会自动侦测PCI的卡,及在PCI及ISA介面做一区隔
# Floppy drives // 软碟 device fdc0 at isa? port IO_FD1 irq 6 drq 2 device fd0 at fdc0 drive 0 #device fd1 at fdc0 drive 1 // 软碟的控制卡,fd0是A:,fd1是B:(因为我没有第二个软碟机,所以 # 掉fd1)
# ATA and ATAPI devices device ata0 at isa? port IO_WD1 irq 14 device ata1 at isa? port IO_WD2 irq 15 // 以上这两个,是给那些没有PCI的系统使用
device ata // kernel侦测PCI/ATA/ATAPI的选项
device atadisk # ATA disk drives // IDE介面的硬碟机
device atapicd # ATAPI CDROM drives // IDE介面的光碟机
#device atapifd # ATAPI floppy drives // IDE介面的软碟机 (我没有..所以 # 掉)
#device atapist # ATAPI tape drives // IDE介面的磁带机 (这....我更没有...所以 # 掉)
options ATA_STATIC_ID #Static device numbering // 让控制卡的数值固定,否则,则使用动态产生
options ATA_ENABLE_ATAPI_DMA #Enable DMA on ATAPI devices // 启动DMA(动态记忆体存取),预设是#掉..因大多数硬碟都支援,所以我将#拿掉 ---------------------------------------------------------------------------- [第四部份] SCSI装置 设定 ---------------------------------------------------------------------------- # SCSI Controllers #device ahb # EISA AHA1742 family #device ahc # AHA2940 and onboard AIC7xxx devices #device amd # AMD 53C974 (Teckram DC-390(T)) #device isp # Qlogic family #device ncr # NCR/Symbios Logic #device sym # NCR/Symbios Logic (newer chipsets) #options SYM_SETUP_LP_PROBE_MAP=0x40 # Allow ncr to attach legacy NCR devices when # both sym and ncr are configured #device adv0 at isa? #device adw #device bt0 at isa? #device aha0 at isa? #device aic0 at isa? // SCSI控制卡...#掉你没有的装置,若您像我只有IDE介面,您可以#掉以上。 请参照 LINT 说明...找找您的卡是属於哪一种...
# SCSI peripherals #device scbus # SCSI bus (required) // 若您有SCSI介面...please keep this ... #device da # Direct Access (disks) // SCSI硬碟机 #device sa # Sequential Access (tape etc) // SCSI磁带机 #device cd # CD // SCSI光碟机 #device pass # Passthrough device (direct SCSI access) // SCSI周边装置...#掉你没有的装置,若您像我只有IDE介面,您可以#掉以上。 同样若您有疑问,请参照 LINT 说明 ---------------------------------------------------------------------------- [第五部份] RAID、滑鼠、键盘、显示卡、电源管理、浮点运算、console 设定 ---------------------------------------------------------------------------- # RAID controllers interfaced to the SCSI subsystem #device asr # DPT SmartRAID V, VI and Adaptec SCSI RAID #device dpt # DPT Smartcache - See LINT for options! // 多磁碟阵列接SCSI控制卡 请参照 LINT 说明...找找您的卡是属於哪一种...(我很穷..所以这..更不用说了..# 掉吧) # RAID controllers #device ida # Compaq Smart RAID #device amr # AMI MegaRAID #device mlx # Mylex DAC960 family #device twe # 3ware Escalade // 多磁碟阵列卡 请参照 LINT 说明...找找您的卡是属於哪一种...(我很穷..所以这..更不用说了..# 掉吧) # atkbdc0 controls both the keyboard and the PS/2 mouse device atkbdc0 at isa? port IO_KBD // AT及PS/2的装置 这个被atkbd及psm所需要...也就是有atkbd就要有atkbdc0,psm亦然 device atkbd0 at atkbdc? irq 1 flags 0x1 // AT 84 键盘
device psm0 at atkbdc? irq 12 // PS/2的滑鼠
device vga0 at isa? // 显示卡驱动程式
# splash screen/screen saver pseudo-device splash // 引人注目的启动萤幕(like microsoft windows),以及萤幕保护程式。
# syscons is the default console driver, resembling an SCO console device sc0 at isa? flags 0x100 // FreeBSD预设的console驱动程式,类似SCO console ...
# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver #device vt0 at isa? #options XSERVER # support for X server on a vt console #options FAT_CURSOR # start with block cursor # If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines #options PCVT_SCANSET=2 # IBM keyboards are non-std // VT220相容的console驱动程式,与VT100/102相容。 当您无法使用sc0时使用之(某些笔记型电脑), 在任何平台上VT100都可以执行。不过较少人使用... export TERM=vt100
# Floating point support - do not disable. device npx0 at nexus? port IO_NPX irq 13 // npx0是FreeBSD上的数学浮点运算单位,包括实体的或是软体模拟的
# Power management support (see LINT for more options) #device apm0 at nexus? disable flags 0x20 # Advanced Power Management // 支援进阶的电源管理,对笔记型电脑很有助益。 ---------------------------------------------------------------------------- [第六部份]PCMICA、COM port、平行埠 设定 ---------------------------------------------------------------------------- # PCCARD (PCMCIA) support #device card #device pcic0 at isa? irq 0 port 0x3e0 iomem 0xd0000 #device pcic1 at isa? irq 0 port 0x3e2 iomem 0xd4000 disable // PCMCIA支援...针对於笔记型电脑
# Serial (COM) ports device sio0 at isa? port IO_COM1 flags 0x10 irq 4 device sio1 at isa? port IO_COM2 irq 3 #device sio2 at isa? disable port IO_COM3 irq 5 #device sio3 at isa? disable port IO_COM4 irq 9 // COM1~COM4,预设COM3、COM4不会用到所以#掉
# Parallel port // 平行埠 device ppc0 at isa? irq 7 // ISA-bus的平行埠介面 device ppbus # Parallel port bus (required) // 平行埠bus支援 #device lpt # Printer // 平行埠的印表机支援 (我没有印表机..so # 掉) device plip # TCP/IP over parallel // 平行埠的网路介面 #device ppi # Parallel port interface device // 平行埠的介面装置 (我也没有任何有关的介面..so # 掉) #device vpo # Requires scbus and da // 这是专门给Iomega Zip的支援 (我更没有ZIP) ---------------------------------------------------------------------------- [第七部份]PCI 及ISA 网卡 设定 ---------------------------------------------------------------------------- # PCI Ethernet NICs. #device de # DEC/Intel DC21x4x (``Tulip'') #device fxp # Intel EtherExpress PRO/100B (82557, 82558) #device tx # SMC 9432TX (83c170 ``EPIC'') #device vx # 3Com 3c590, 3c595 (``Vortex'') #device wx # Intel Gigabit Ethernet Card (``Wiseman'') // PCI的网路卡..选择您的网卡...其馀的# 掉
# PCI Ethernet NICs that use the common MII bus controller code. device miibus # MII bus support #device dc # DEC/Intel 21143 and various workalikes #device pcn # AMD Am79C79x PCI 10/100 NICs #device rl # RealTek 8129/8139 #device sf # Adaptec AIC-6915 (``Starfire'') #device sis # Silicon Integrated Systems SiS 900/SiS 7016 #device ste # Sundance ST201 (D-Link DFE-550TX) #device tl # Texas Instruments ThunderLAN device vr # VIA Rhine, Rhine II #device wb # Winbond W89C840F #device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'') // PCI的网路卡..选择您的网卡...其馀的# 掉 若您的网卡是这第二部份的..别忘了要将第一个miibus支援加上,像我一样。 // 网卡的型号可以从dmesg中看出...否则您也可以从 LINT 中参考
# ISA Ethernet NICs. #device ed0 at isa? port 0x280 irq 10 iomem 0xd8000 #device ex #device ep #device fe0 at isa? port 0x300 # WaveLAN/IEEE 802.11 wireless NICs. Note: the WaveLAN/IEEE really # exists only as a PCMCIA device, so there is no ISA attatement needed # and resources will always be dynamically assigned by the pccard code. #device wi # Aironet 4500/4800 802.11 wireless NICs. Note: the declaration below will # work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP # mode (the factory default). If you set the switches on your ISA # card for a manually chosen I/O address and IRQ, you must specify # those paremeters here. #device an # Xircom Ethernet #device xe
# The probe order of these is presently determined by i386/isa/isa_compat.c. #device ie0 at isa? port 0x300 irq 10 iomem 0xd0000 #device le0 at isa? port 0x300 irq 5 iomem 0xd0000 #device lnc0 at isa? port 0x280 irq 10 drq 0 #device cs0 at isa? port 0x300 #device sn0 at isa? port 0x300 irq 10 // ISA的网卡...同样的选择您有的...没有的#掉 ... 同样的..您也可以参考/sur/src/sys/i386/conf/LINT 有详细的说明 ---------------------------------------------------------------------------- [第八部份]虚拟装置、封包过滤器、USB的装置 设定 ---------------------------------------------------------------------------- # Pseudo devices - the number indicates how many units to allocated. pseudo-device loop # Network loopback // 通常的loop装置,当您用telnet或ftp localhost它就是经由此装置 此为必需的。 pseudo-device ether # Ethernet support // 当您有网路卡时才需要,它也包含基本的网路协定码
#pseudo-device sl 1 # Kernel SLIP // 支援SLIP,不过他以快要被PPP取代,s1後的数字表示,同时有多少SLIP session被支援
#pseudo-device ppp 1 # Kernel PPP // 对拨接的PPP支援,ppp後的数字表示,同时有多少PPP连结被支援
#pseudo-device tun # Packet tunnel. // 被PPP所使用,tun後的数字表示,同时有多少PPP session被支援
pseudo-device pty # Pseudo-ttys (telnet etc) // 虚拟终端机装置,预设是16,最高可以达到256 (login port)
pseudo-device md # Memory "disks" // memory disk 虚拟装置 与之前的(第二部份)MFS相呼应,不可单独存在
#pseudo-device gif 4 # IPv6 and IPv4 tunneling // IPv4及IPv6间的工具
#pseudo-device faith 1 # IPv6-to-IPv4 relaying (translation) // 抓取封包并使之转向到IPv4/IPv6间的转化daemon # The `bpf' pseudo-device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! pseudo-device bpf #Berkeley packet filter // Berkeley的封包过滤器。(这是必要的) 他允许网路介面即使被放置在一个杂乱的模式,它也能在broadcast上抓取每一封包。 这些封包能被抓取到磁碟或经由tcpdump程式解释。 # USB support #device uhci # UHCI PCI->USB interface #device ohci # OHCI PCI->USB interface #device usb # USB Bus (required) #device ugen # Generic #device uhid # "Human Interface Devices" #device ukbd # Keyboard #device ulpt # Printer #device umass # Disks/Mass storage - Requires scbus and da #device ums # Mouse # USB Ethernet, requires mii #device aue # ADMtek USB ethernet #device cue # CATC USB ethernet #device kue # Kawasaki LSI USB ethernet // USB装置的支援
终於...把文字叙述档给修正完成了....现在已经完成编译的一大步了... 让我们一鼓作气完成他...继续编译
|