2.3. 開始安裝

Important: 預設的情況下,安裝過程並不會改變任何您磁碟機中的資料,除非您看到下 面的訊息:

Last Chance: Are you SURE your 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!

在看到這最後的警告訊息前您都可以隨時離開安裝程式而不會變更您的硬碟。 如果您發現有任何設定錯誤,這時您可以直接將電源關掉而不會造成任何傷害。

2.3.1. 開機啟動

2.3.1.1. i386 架構啟動

  1. 從電腦尚未開機開始說起。

  2. 將電腦電源打開。剛開始的時候它應該會顯示進入系統設定要按哪個鍵,常見的 是 F2F10DelAlt+S。不論是要按哪個鍵,請按它進入 BIOS 設定畫面。

  3. 找到設定開機順序的選項,通常會列出一些裝置讓您選擇,例如: FloppyCDROMFirst Hard Disk 等等。

    如果您要用磁片安裝,請確定選到 floppy disk;如果您要用光碟安裝,那請 選擇 CDROM。為了避免疑惑,請參考您的主機板說明手冊。

    儲存設定並離開,系統應該會重新開機。

  4. 如果您用磁片安裝,請將在 Section 2.2.6 一節中製作 好的安裝磁片放到第一台軟碟機中,通常這片磁片應該是用 kern.flp 做的。

    如果您是從光碟安裝,那麼開機後請將 FreeBSD 光碟放入光碟機。

    如果您開機後如往常一樣並沒有從軟碟或光碟開機,請檢查:

    1. 是不是磁片或光碟太晚放入而錯失開機時間。如果是,請將它們放入然後 重新開機。

    2. BIOS 設定不對,請重新檢查 BIOS 的設定。

  5. 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 C: is disk3
        BIOS 639kB/261120kB available memory
        
        FreeBSD/i386 bootstrap loader, Revision 0.8
        (murray@builder.freebsdmall.com, Thu Jan 17 19:28:57 PST 2002)
        /kernel text=0x266691 data=0x407c+0x20d68 \
        |
        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 
         (murray@builder.freebsdmall.com, Thu Jan 17 19:28:57 PST 2002) 
        /kernel text=0x266691 data=0x407c+0x20d68 | 
        
        Please insert MFS root floppy and press enter:

    依照指示,將 kern.flp 磁片移出,放入 mfsroot.flp 磁片,然後按 Enter

  6. 不論從軟碟或光碟開機,您都會看到下面這段訊息:

        Hit [Enter] to boot immediately, or any other key for command prompt. 
        Booting [kernel] in 9 seconds... _

    您可以等待 10 秒或是按 Enter 跳過。之後就會進入核心 設定選單。

2.3.1.2. Alpha 架構啟動

  1. 從電腦尚未打開電源開始。

  2. 打開電腦電源並等待螢幕上出現開機提示字串。

  3. 如果您需要準備安裝磁片,請參考 Section 2.2.6。將 用 kern.flp 做的開機片放入軟碟機中然後輸入下列指令( 請視實際情況修改指令中的軟碟機代號):

        >>>BOOT DVA0 -FLAGS '' -FILE ''

    如果您要從光碟開機,請將光碟放入光碟機中然後輸入下列指令開始安裝(請 視情況修改指令中的光碟機代號):

        >>>BOOT DKA0 -FLAGS '' -FILE ''
  4. 然後 FreeBSD 就會啟動。如果您從軟碟開機,到某個階段您會看到下面的訊息:

        Please insert MFS root floppy and press enter:

    依照螢幕指示,將 kern.flp 磁片取出,換上 mfsroot.flp 磁片,然後按 Enter 繼續。

  5. 不論從軟碟或光碟開機,您都會看到下面這段訊息:

        Hit [Enter] to boot immediately, or any other key for command prompt. 
        Booting [kernel] in 9 seconds... _

    您可以等待 10 秒或是按 Enter 跳過。之後就會進入核心 設定選單。

2.3.2. 核心組態設定

核心(kernel) 是作業系統最重要的部分。它負 責很多工作,包括存取系統上所有的裝置,如硬碟、網路卡、音效卡等等。每一個 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-1. 核心組態設定畫面

之後,核心組態畫面分為四個區域(圖 Figure 2-2)。

  1. "active(可用)" 區域的展開式選單分為四個群組,例如 Storage(儲存裝置)Network(網路裝置)。 每項裝置會顯示對應的說明、由二或三個字母組成的驅動程式名稱以及驅動程式所使用 的 IRQ 跟記憶體位址。另外,如果一個可用的驅動程式跟另一個可用的有衝突,在他 們的驅動程式名稱之後會顯示 CONF 字樣。同時欄位標題也會顯示 可用的裝置中總共有幾個裝置有衝突。

  2. 在 Inactive(停用)區的驅動程式仍然保留在核心中,但是當核心啟動的時候 並不會搜尋這些裝置。這個區域的分組方式跟可用區一樣。

  3. 第三區(訊息顯示區)顯示的是目前所選擇裝置的細項設定,包括 IRQ 及記憶\ 體位置。

  4. 第四區告訴您這個畫面的操作按鍵。

Figure 2-2. 核心裝置視覺化組態設定介面

在這個階段,您總是會看到有衝突的裝置被列出。請不要擔心,因為這是正 常的;前面提到再安裝的時候所有的裝置都會被啟用,而其中的某些裝置就會跟其他的 裝置產生衝突。

現在您必須逐一檢查這些裝置驅動程式,然後解決衝突的問題。

解決驅動程式衝突

  1. 按下 X 鍵可以將所選擇區域的驅動程式完全展開以方面您 檢閱。您可以使用方向鍵在可用裝置區前後移動。

    Figure 2-3 顯示按下 X 鍵後 的結果。

    Figure 2-3. 展開驅動程式清單

  2. 停用任何您沒有的裝置驅動程式。要停用一項裝置,用方向鍵移動將該裝置反白 然後按下 Del 鍵,則此裝置驅動程式就會被移到 Inactive Drivers(停用裝置區)

    如果您不小心將一個裝置停用,那麼請按 Tab 鍵切換到 Inactive Drivers 區,選擇被停用的裝置,然後按下 Enter 鍵將它移回可用裝置區。

    Important: 請不要移除 sc0。這個驅動程式是控制螢幕用, 除非您是透過序列線安裝,否則請不要移除它。

    Important: 如果您用的是 USB 鍵盤才可以停用 atkbd0;用 一般的鍵盤請保留此裝置。

  3. 如果現在顯示沒有衝突,那麼您可以跳過這一步驟。否則,剩下的衝突還是必 須解決。如果在訊息顯示區沒有看到 "allowed conflict(允許衝突)" ,那麼您必須改變這邊顯示的 IRQ/記憶體位址,必須變更 裝置上面的 IRQ/記憶體位址。

    要改變裝置驅動程式的 IRQ 及記憶體位址,選擇要變更的驅動程式然後按下 Enter 鍵。之後等游標移到第三區(訊息顯示區)候您就可以更 改這些設定。您應該輸入在之前做硬體清單列表的時候所紀錄的 IRQ 及 IO 位址。 要完成變更請按 Q 鍵並回到可用裝置區。

    如果您不確定該設定什麼值,那您可以試試看 -1。有些 FreeBSD 驅動程式在搜尋裝置的時候可以安全找出裝置的正確設定值;所以這邊設定 -1 就是告訴這些驅動程式自行去嘗試找出適合的設定。

    如果要直接在裝置硬體上改變設定值,設定的方法每種裝置都不大相同。有些 裝置您必須將它從電腦中拆下來然後調整跳線或是 DIP 開關;其他的可能廠商會提供 DOS 工具磁片,裡面有程式可以更改這些設定。不論是哪一種方式,您都應該參考裝 置所附之使用手冊。很明顯地,改變這些設定值必須重新開機後才會生效,所以您必 須重新進入 FreeBSD 安裝程式。

  4. 當所有的衝突都解決了以後,您會看到類似 Figure 2-4 的畫面。

    Figure 2-4. 沒有衝突的裝置驅動程式組態畫面

    如您所見,可用裝置區變得乾淨多了,只列出您系統中有的裝置。

    現在您可以儲存所做的變更,然後進到下一個安裝步驟。按 Q 鍵離開裝置設定介面,您會看到下面的訊息:

        Save these parameters before exiting? ([Y]es/[N]o/[C]ancel)

    回答 Y 儲存設定然後就會開始搜尋裝置。在裝置搜尋完畢 後,Sysinstall 就會啟動並且顯示它的主畫面( Figure 2-5)。

    Figure 2-5. Sysinstall 主畫面

2.3.3. 查看裝置搜尋的結果

前面螢幕顯示的最後幾百行字會存在暫存區以便您查閱。

要瀏覽暫存區,您可以按下 Scroll Lock 鍵,這會開啟 畫面的捲動功能。然後您就可以使用方向鍵或是 PageUpPageDown 鍵來上下翻閱。再按一次 Scroll Lock 停止畫面捲動。

在您瀏覽的時候會看到類似 Figure 2-6 的畫面。 真正的結果依照您的電腦裝置而有所不同。

Figure 2-6. 典型的裝置搜尋結果

    avail memory = 254611456 (248644K bytes)
    Preloaded elf kernel "kernel" at 0xc069a000.
    Preloaded mfs_root "/mfsroot" at 0xc069a084.
    md1: Malloc disk
    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
    uhci0: <VIA 83C572 USB controller> port 0xe400-0xe41f irq 10 at device 7.2 on pci0
    usb0: <VIA 83C572 USB controller> on uhci0
    usb0: USB revision 1.0
    uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
    uhub0: 2 ports with 2 removable, self powered
    chip1: <VIA 82C586B ACPI interface> at device 7.3 on pci0
    ed0: <NE2000 PCI Ethernet (RealTek 8029)> port 0xe800-0xe81f irq 9 at device 10.0 on pci0
    ed0: address 52:54:05:de:73:1b, type NE2000 (16bit)
    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 irq6 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 irq 1 on atkbdc0
    kbd0 at atkbd0
    psm0: <PS/2 Mouse> irq 12 on atkbdc0
    psm0: model Generic PS/2 mouse, device ID 0
    vga0: <Generic ISA VGA> at port 0x3c0-0c3df 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 irq3 on isa0
    sio1: type 16550A
    ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
    ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
    ppc0: FIFO with 16/16/15 bytes threshold
    ppbus0: IEEE1284 device found /NIBBLE
    Probing for PnP devices on ppbus0:
    ppi0: <Parallel I/O> on ppbus0
    plip0: <PLIP network interface> on ppbus0
    ad0: 8063MB <IBM-DHEA-38451> [16383/16/63] at ata0-master using UDMA33
    acd0: CDROM <DELTA OTC-H101/ST3 F/W by OIPD> at ata0-slave using PIO4
    Mounting root from ufs:/dev/md0c
    /stand/sysinstall running as init on vty0

仔細檢查搜尋的結果以確定 FreeBSD 有找到所有您預期出現的裝置。如果裝 置沒有找到,那麼就不會列出。如果此裝置需要設定 IRQ 及記憶體位址,請您再確定是 否設定正確。

如果您需要變更某些裝置的設定,您可以很容易地離開 sysinstall 程式然後重頭來過。這也有助於您熟悉這些過程。

Figure 2-7. 選擇離開 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

如果您的光碟還在光碟機裡並且選擇了 [Yes],則 安裝程式會重新開始。

如果您是從軟碟開機,那麼重新開機前您必須將 mfs.root 磁片取出再換上 kern.flp 磁片。