Important: 默认情况下, 安装过程并不会改变任何您硬盘中的数据,除非您看到 下面的讯息:
Last Chance: Are you SURE you want continue the installation? If you're running this on a disk with data you wish to save then WE STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding! We can take no responsibility for lost disk contents!在看到这最后的警告讯息前您都可以随时离开安装程序面不会变更您的硬盘。 如果您发现有任何设定错误,这时您可以直接将电源关掉而不会造成任何伤害。
从电脑尚未开机开始说起
将电脑电源打开。刚开始的时候它应该会显示进入系统设置菜单或 BIOS 要按哪个键,常见的是 F2、F10、 Del 或 Alt+S。不论是要按哪个键,请按它进入 BIOS 设置画面。有时您的计算机 可能会显示一个图形画面,典型的做法是按 Esc 将关掉这个图形 画面,以使您能够看到必要的设置信息。
找到设置开机顺序的选项,它的标记为 “Boot Order” 通常会列出一些设备让您选择,例如:Floppy、 CDROM、First Hard Disk 等等。
如果您要用软盘安装,请确定选到 floppy disk;如果您要用光盘安装, 请选择 CDROM。为了避免疑惑,请参考您的主板说明手册。
储存设定并离开,系统应该会重新启动。
如果您用软盘安装,请将在 Section 2.2.7 一节中制作好的第一张引导盘,里面包含kern.flp 文件的那张盘,放入软盘驱动器中。
如果您是从光盘安装,那么开机后请将 FreeBSD 光盘放入光驱中。
如果您开机后如往常一样并没有从软盘或光盘引导,请检查:
是不是软盘或光盘太晚放入面错失开机引导时间。如果是,请将它们 放入后重新开机。
BIOS 设定不对,请重新检查 BIOS 的设定。
您的 BIOS 不支持从这些安装介质引导。
FreeBSD 即将启动。如果您是从光盘引导,您会见到类似下面的画面:
Verifying DMI Pool Data ........ Boot from ATAPI CD-ROM : 1. FD 2.88MB System Type-(00) Uncompressing ... done BTX loader 1.00 BTX version is 1.01 Console: internal video/keyboard BIOS drive A: is disk0 BIOS drive B: is disk1 BIOS drive C: is disk2 BIOS drive D: is disk3 BIOS 639kB/261120kB available memory FreeBSD/i386 bootstrap loader, Revision 0.8 /kernel text=0x277391 data=0x3268c+0x332a8 | | Hit [Enter] to boot immediately, or any other key for command prompt. Booting [kernel] in 9 seconds... _
如果您是从软盘引导,会看到类似下面的画画:
Verifying DMI Pool Data ........ BTX loader 1.00 BTX version is 1.01 Console: internal video/keyboard BIOS drive A: is disk0 BIOS drive C: is disk1 BIOS 639kB/261120kB available memory FreeBSD/i386 bootstrap loader, Revision 0.8 /kernel text=0x277391 data=0x3268c+0x332a8 | Please insert MFS root floppy and press enter:
按照指示,将kern.flp 软盘取出,放入 mfsroot.flp 软盘,然后按Enter。
不论是从软盘或光盘引导,您都会看到下面这段信息:
Hit [Enter] to boot immediately, or any other key for command prompt. Booting [kernel] in 9 seconds... _
您可以等待10秒或是按 Enter 键跳过。之后就会进入内核 配置菜单。
从电脑尚未打开电源开始。
找开电脑电源并等待屏幕上出现开机提示信息。
如您需要准备安装软盘,请参考Section 2.2.7 。 将用 kern.flp 做的引导盘放入软驱中然后输入下列命令 (请视实际情况修改命令中的软驱盘符):
>>>BOOT DVA0 -FLAGS '' -FILE ''
如果您要从光盘引导,请将光盘放入光驱中然后输入下列命令开始安装 (请视情况修改命令中的光驱盘符):
>>>BOOT DKA0 -FLAGS '' -FILE ''
然后 FreeBSD 就会启动。如果您从软盘引导,到某个阶段您会看到下面的信息:
Please insert MFS root floppy and press enter:
按照屏幕指示,将 kern.flp 软盘取出,换上 mfsroot.flp 然后按Enter键。
不论从软盘或光盘引导,您都会看到下面这段信息:
Hit [Enter] to boot immediately, or any other key for command prompt. Booting [kernel] in 9 seconds... _
您可以等待 10 秒或是按 Enter 跳过。之后就会进入内核 设定菜单。
Note: 从FreeBSD 5.0 版以后, 用户配置已经不赞成使用新的 device.hints(5) 方法,更多的信息 device.hints(5) 请访问 Section 12.5
内核是操作系统最核心的部分。它负责很多工作, 包括存取系统上所有设备,如硬盘、网卡、声卡等等。每一个 FreeBSD 核心支持的设备都有其相对应的驱动程序。这些驱动程序的名称由两个或三个字母级成,譬如: sa 表示 SCSI 存取驱动程序;sio 表示串口 I/O 驱动程序(管理 COM 端口)。
当内核启动的时候,每个驱动程序会检查系统中是否有它所支持的设备。如果找到的话, 这些驱动程序就会配置这些设备的状态以代核心使用。
上述设备的检查我们称做 device probing(设备探测)。 但是很不幸地,这样做并不是完全安全的。因为有些硬件驱动程序没有办法想到共存, 有时找到这个设备却让另一个设备处在不稳定的状态。这是 PC 设计上的限制。
许多早期的称作 ISA 的设备--(相对于 PCI 设备而言)。ISA 设备的规格需要将硬件的某些数据写死在设备上,最具代表性的就是中断号(IRQ)以及 IO 端口号。这些设定值通常是通过改变设备上的 jumpers(跳线), 或是使用由厂商提供的 DOS 工具程序来改变。
这通常是问题的所在,因为这没办法让两个设备共同分享一个 IRQ 或是 IO 端口 地址。
新的设备都按照 PCI 规格设计,这些设备就没有上述限制;它们会参考 BIOS 中的设定然后动态分配 IRQ 及 IO 端口地址。
如果您的系统中有任何 ISA 设备,那么在设置 FreeBSD 驱动程序的时候您就 必须指定这些设备的 IRQ 及 IO 地址。这也是我们在 Section 2.2.1一节中希望您先准备一份设备清单的用意。
仍然很不幸地,预设给某些设备使用的 IRQ 会跟内存地址互相冲突。这是因为 有些 ISA 设备出厂的设定值就会跟其它的设备冲突。撇开这个不谈,FreeBSD 驱动 程序通常都会根据各制造商设备的出厂设定值来设定,这也是为什么许多设备可 以在 FreeBSD 顺利驱动的原因。
在跑 FreeBSD 的时候根本不会有上冲突的问题,因为当两个设备互相冲突的 时候,其中一个设备将被停用(不论您用的是哪种操作系统)。
通常在第一次安装 FreeBSD 的时候才会有问题,因为内核希望尽是多包含一 些驱动程序,这样才能支持许多不同设备的配置。这意味着在找到的这些设备中 有可能设定值会互相冲突。FreeBSD 在探测系统设备的时候会按照一的顺序,如 果您的某个设备在较后面探测到,但是跟前面找到的设备设定冲突,那么在安装 FreeBSD 的时候,这个设备不一定能正确雇用。
因为如此,当您在安装 FreeBSD 前,可以先看看在系统内核中包含了哪些驱 动程序,如果您没有某些设备,则可以将它们的驱动程序删除或是在稍后您也 可以确认您有的设备的设定值有没有问题。
这听起来好像很复杂,但不全然如此。
Figure 2-1 显示的是内核能设置的第一个配置菜单。 我们推荐您选择Start kernel configuration in full-screen visual mode 选项, 因为这对新手来说比较容易。
内核配置画面 (图Figure 2-2) 被分成四个部分:
在“active(可用)”区域的展开式选择菜单分为四个群,例如 Storage(储存设备)、 Network(网络设备)。 每个设备会显示一个对应的说明、由二或三个字母组成的驱动程序名称以及驱动程序 所使用的IRQ和内存地址。另外,如果可用的驱动程序跟另一个可用的驱动程序有冲突, 它们的驱动程序名称之后会显示 CONF 字样。同时栏目标题也会 显示在可用的设备中总共有几个设备有冲突。
在 Inactive(停用)区域的驱动程序仍然保留在内核中,但当内核启动的时候 并不会探测这些设备。这个区域的分组方式跟可用区一样。
第三区(信息显示区)显示的是目前所选择设备的细节项目设置,包括 IRQ 及 IO 端口地址。
第四区告诉您这个画面的操作按键。
在这个阶段,您总是会看到有冲突的设备被列出。请不要担心,因为这是正 常的;前面提到在安装的时候所有的设备都会被启用,而其中的某些设备就会跟 其它的设备产生冲突。
现在您必须逐一检查这些设备驱动程序,然后解决冲突的问题。
解决驱动程序冲突
按下 X 键可以将所选择区域的驱动程序完全展开以方便您 检阅。您可以使用方向键在可用设备区前后移动。
Figure 2-3 显示按下 X 键 后的结果。
停用任何您没有的设备的驱动程序。要停用一个设备,用方向键移动将该 设备反白然后按下 Del 键,则此设备驱动程序就会被移到 Inactive Drivers(停用设备区) 列表。
如果您不小心将一个设备停用,那么请按 Tab 切换到 Inactive Drivers 区, 选择被停用的设备,然后按下 Enter 键将它移回可用设备区。
Warning请不要移除 sc0。这个驱动程序是控制屏幕 用的,除非您是通过串行线进行安装,否则请不要移除它。
Warning如果您用的是 USB 键盘才可以停用 atkbd0 用一般 的键盘请保留此 atkbd0 设备驱动程序。
如果现在显示没有冲突,那么您可以跳过这一步骤。否则,剩下的冲突还是必 须解决。如果在信息显示区没有看到 “allowed conflict(允许冲突)”, 那么您必须改变这边显示的 IRQ 及内存地址, 或 必须变更设备 上面的 IRQ 及内存地址。
要改变设备驱动程序的 IRQ 及 IO 端口地址,选择要变更的驱动程序然后 按 Enter 键。之后等光标移到第三区(信息显示区)时候您就 可以理发这些设置。您应该输入之前做硬件清单列表的时候所记录的 IRQ 及 IO 端 口地址。要完成更改请按 Q 键并回到可用设备区。
如果您不确定该设定什么值,那么可以试试看 -1。 有些 FreeBSD 驱动程序在搜寻设备的时候可以安全找出设备的正确设定值;所以这里设置 -1 就是告诉这些驱动程序自行去尝试找出合适的设置。
如果要直接在设备硬件上改变设定值,设定的方法每种设备都不大相同。有些 设备您必须将它从电脑中拆下来然后调整路线或是DIP开关;其它的可能厂商会提供 DOS 工具软盘,里面有程序可以更改这些设定。不论是哪一种方式,您都应该参考设备所附 的使用手册。很明显地,改变这些设定值必须重新开机后才会生效,所以您必须重新进 入 FreeBSD 安装程序。
当所有的冲突都解决了以后,您会看到类似Figure 2-4 的画面。
如您所见,可用设备列表变得干净多了,只列出您系统中有的设备。
现在您可以储存所做的改变,然后进到下一个安装步骤。按 Q 键离开设备配置界面,您会看到下面的信息:
Save these parameters before exiting? ([Y]es/[N]o/[C]ancel)
回答 Y 保存配置到内存(安装完成后将后保存到磁盘)然后开始 探测设备。在设备探测完毕后,sysinstall 就会启动并且显 示它的主界面。(Figure 2-5)。
前面屏幕显示的最后几百行字会存在缓冲区中以便您查阅。
要浏览缓冲区,您可以按下 Scroll Lock 键,这会开启画面的 卷动功能。然后您就可以使用方向键或 PageUp 、PageDown 键来上下翻阅。再按一次 Scroll Lock 键将停止画面卷动。
在您浏览的时候会看到类似 Figure 2-6的画面。 真正的结果依照您的电脑装置而有所不同。
Figure 2-6. 典型的设备探测结果
avail memory = 253050880 (247120K bytes) Preloaded elf kernel "kernel" at 0xc0817000. Preloaded mfs_root "/mfsroot" at 0xc0817084. md0: Preloaded image </mfsroot> 4423680 bytes at 0xc03ddcd4 md1: Malloc disk Using $PIR table, 4 entries at 0xc00fde60 npx0: <math processor> on motherboard npx0: INT 16 interface pcib0: <Host to PCI bridge> on motherboard pci0: <PCI bus> on pcib0 pcib1:<VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib1 pci1: <Matrox MGA G200 AGP graphics accelerator> at 0.0 irq 11 isab0: <VIA 82C586 PCI-ISA bridge> at device 7.0 on pci0 isa0: <iSA bus> on isab0 atapci0: <VIA 82C586 ATA33 controller> port 0xe000-0xe00f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0 <VIA 83C572 USB controller> port 0xe400-0xe41f irq 10 at device 7.2 on pci 0 usb0: <VIA 83572 USB controller> on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr1 uhub0: 2 ports with 2 removable, self powered pci0: <unknown card> (vendor=0x1106, dev=0x3040) at 7.3 dc0: <ADMtek AN985 10/100BaseTX> port 0xe800-0xe8ff mem 0xdb000000-0xeb0003ff ir q 11 at device 8.0 on pci0 dc0: Ethernet address: 00:04:5a:74:6b:b5 miibus0: <MII bus> on dc0 ukphy0: <Generic IEEE 802.3u media interface> on miibus0 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ed0: <NE2000 PCI Ethernet (RealTek 8029)> port 0xec00-0xec1f irq 9 at device 10. 0 on pci0 ed0 address 52:54:05:de:73:1b, type NE2000 (16 bit) isa0: too many dependant configs (8) isa0: unexpected small tag 14 orm0: <Option ROM> at iomem 0xc0000-0xc7fff on isa0 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq1 on atkbdc0 kbd0 at atkbd0 psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model Generic PS/@ mouse, device ID 0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 pppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/15 bytes threshold plip0: <PLIP network interface> on ppbus0 ad0: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata0-master UDMA33 acd0: CD-RW <LITE-ON LTR-1210B> at ata1-slave PIO4 Mounting root from ufs:/dev/md0c /stand/sysinstall running as init on vty0
仔细检查探测结果以确定 FreeBSD 找到所有您期望出现的设备。如果设备没有 探测到,那么就不会列出。如果此设备需要设定 IRQ 以及 IO 端口地址,请您再确定 是否设定的正确。
如果您需要改变某些设备的设置,您可以很容易地退出 sysinstall 程序,然后从头重新来过。这也有助您熟悉这些过程。
在主界面使用方向键选择 Exit Install 您会看到 如下的信息:
User Confirmation Requested Are you sure you wish to exit? The system will reboot (be sure to remove any floppies from the drives). [ Yes ] No
如果 CDROM 还留在光驱里,而且选择了 [ Yes ], 则安装程序将重新启动。
如果您是从软盘启动,那么重新开机前您必须将 mfsroot.flp 软盘取出再换上 kern.flp 软盘。