FreeBSD連載(05):安裝之前的準備

1999年11月7日 18:20 王波

第2章 安裝與配置

  Unix給人的印象一向是比較專業,難以安裝,但是FreeBSD的表現卻並非如此。這是因為FreeBSD 主要支持最流行的個人電腦平台,由於多平台問題不是主要考慮對象,FreeBSD的開發者就集中精力建立了一整套適 用於個人電腦的高級安裝與配置工具 ── Sysinstall。因此與其他Unix系統不同(包括NetBSD和 FreeBSD),FreeBSD的安裝過程相對簡單和容易理解,只需要安裝軟碟或安裝光碟啟動安裝程序,就能順利完 成安裝FreeBSD的任務。

  FreeBSD的安裝程序支持最流行的網路安裝和光碟安裝方式,也支持傳統的磁帶和軟碟等其他幾種安裝方式, 支持大多數的流行硬體以及這些硬體的標準配置,並能對系統進行基本配置,如主機名、鍵碟和螢幕字體、網路設置等。

  但是通常個人電腦上最常使用的還是微軟的Windows 9x系列的操作系統,使用者常常習慣用來自於DO S的一些概念來分析系統,這些概念與Unix對同樣事物的理解方式有所不同。而FreeBSD是一個完整的Unix操 作系統,因此要求使用者要使用Unix的方式去了解個人電腦系統的各個方面。正如一個沒有任何DOS/Window s基本概念的使用者,無法正確安裝DOS/Windows一樣,一個沒有任何Unix的基本概念的使用者,也無法正確 安裝FreeBSD。

  • 安裝之前的準備

  安裝之前應該了解要安裝FreeBSD的電腦硬體配置和Unix的一些基本概念,以及FreeBSD軟體的 載體 ── 安裝介質。這些信息能幫助用戶了解這台電腦是否適合安裝FreeBSD,是否具備安裝FreeBSD的 條件。絕大多數情況下使用安裝光碟(或軟碟)直接進行安裝,就能完成安裝任務,但了解更多的信息可以幫助安裝者處理在 特定條件下發生的安裝問題。所以建議讀者不要忽略安裝的準備階段,充分了解自己要安裝的系統的硬體和FreeBSD中 的常用概念,可以避免安裝過程中出現問題。

  • 硬體設備

  個人電腦上的硬體種類千差萬別,對於用於不同目的的系統,應該會選用不同的硬體。有些硬體對FreeBSD 系統比較重要,如硬碟和網路設備,而有些硬體不太重要,屬於可選配置,如用於多媒體系統的聲卡等。要安裝FreeBS D系統,必須保証這台電腦中包括最基本的硬體設備,如用於安裝系統的硬碟,讀取要FreeBSD安裝介質的設備:軟 碟驅動器、光碟驅動器或網路等。

  然而也有特定配置的FreeBSD系統,可以僅使用軟碟啟動和運行,或者是無碟的網路工作站。這些系統用於特 定目的,如用作專用防火牆設備或X終端。這些特殊配置的FreeBSD系統不使用標準的安裝方式。

  1. FreeBSD支持的硬體
  2.   標準的FreeBSD最小能夠安裝在一台只有5MB內存,40MB硬碟,使用Intel 80386芯片的機 器上。事實上運行FreeBSD只需4MB就足夠了,只是FreeBSD的安裝程序要將軟碟上的數據首先展開到內存中 的MFS檔案系統中(相當於虛擬磁碟),因此要求至少5MB的存儲空間。如果要求系統能運行X Window圖形界面 ,那麼就應該至少有8MB內存,250MB硬碟。

      FreeBSD在這種低配置的電腦中仍然能完成相當多的任務,然而處理器的速度和內存的大小也限制了它的任 務處理能力,顯然更高配置的電腦能表現出更出色的性能,完成更複雜的處理任務。例如,安裝軟體需要額外的硬碟空間, 而複雜的軟體會要求更大的內存和處理器速度提供支持。通常太低配置的電腦對於用作個人工作站並不適合,但其處理能力 也能滿足完成某些處理專有任務的特定用途方面。例如用作撥號訪問Internet的網關,一台軟碟啟動的386也就能 滿足其56Kbps流量的處理要求。

      不同的工作用途,對硬體的要求也不相同,也應該選用不同種類的硬體。如果用作個人工作站或專用X終端,至少應 該擁有大螢幕、高清晰的圖形顯示器。如果是用作支持數百人同時訪問的Internet伺服器,就必須考慮使用最高級P entium II處理器,SCSI硬碟以及大量的內存。將FreeBSD系統用作軟體路由器、防火牆或網橋設備時, 就應該根據網路結構和數據流量採用高性能的網卡,例如採用ATM網卡或千兆以太網卡。

      FreeBSD支持ISA、EISA和PCI總線的硬體設備,包括標準的IDE/EIDE硬碟驅動器,各種S CSI控制器,IDE和SCSI界面的磁帶驅動器和光驅,其他的一些ATAPI界面的光驅,標準串口、並口,各種類型 的滑鼠,與SoundBlaster兼容的聲卡,VGA兼容的顯示卡等個人電腦上使用的大部分硬體。只有一些太古老 的,或者使用很少的硬體,或者生產廠家不願公開其技術資料的硬體,FreeBSD不能提供支持。對於這樣的情況,就必 須更換硬體設備才能安裝FreeBSD。同時也必須注意到,由於FreeBSD下的硬體支持並不是由硬體廠商提供支持 的,而是由FreeBSD開發者根據硬體廠商提供的資料開發的。因此當一種新設備出現之後,並不會立即出現FreeB SD下的驅動程序,而需要一定的滯後時間。

      字符模式下,只需要標準VGA顯示設備就可以了,但在X Window下,顯示卡的VGA兼容方式只能提供1 6色及640x480的分辨率,而大多數顯示卡能顯示更高的分辨率及更豐富的色彩,這需要顯示卡的驅動程序提供支持, 這種支持是由X Server來完成的,因此對不同種類顯示卡的支持應該檢查X Free86的硬體支持列表。

      在每個FreeBSD安裝介質中,都包括一個該版本的FreeBSD支持硬體的列表檔案──HARDWARE .TXT,也可以到FreeBSD的往頁中獲得各個版本的硬體支持列表檔案。然後可以對比這個檔案中的硬體列表,來判 斷自己電腦上的硬體是否滿足安裝FreeBSD的要求。在訂購電腦硬體時,也可以參考這個檔案的內容來選擇購買F reeBSD支持的硬體。

      但是,FreeBSD支持的硬體並不一定是FreeBSD的標準安裝程序支持的硬體,由於要在安裝軟碟中不可 能包括所有硬體的驅動程序,而只放置了對安裝系統所必要的一些驅動程序。有的硬體設備對於系統安裝來講用處不大,如聲 卡等多媒體設備,那麼其驅動程序就不包括在安裝軟碟和標準核心中。支持這些硬體便需要重新定制FreeBSD核心,安 裝碟支持的硬體也在HAREWARE.TXT中進行了描述。

      目前電腦硬體發展速度非常迅猛,目前Intel平台的電腦完全能滿足不同用途FreeBSD的要求。然而 由於硬體發展很迅速,新型硬體不斷出現,就使得這些硬體從出現到被FreeBSD支持,需要經過一段時間。如果某些硬 件在最新的release版本中不支持,可以查看FreeBSD-current分支是否支持該硬體,因為-curr ent分支通常包括更多新硬體的驅動。

  3. 硬體資源及配置
  4.   個人電腦的硬體由主板和多個的板卡組成,每種硬體必須占用不同的硬體資源。這些資源包括端口號(ports ),中斷請求號(IRQ),直接內存訪問通道號(DRQ),輸入/輸出存儲器地址(I/O memory),硬體使用 的資源不能夠相互衝突,否則衝突的硬體就無法正常工作,甚至會影響整個系統的正常運轉。

      在個人電腦中,硬體資源的分配遵循一定的習慣,這樣在使用的板卡數量較少時就不會形成衝突。但是在硬體較多 時,預設配置就不一定十分合適。為了避免硬體衝突,就需要對板卡使用的資源進行設置。而不同的板卡,採用三種不同的資 源設置方式:

    • 跳線或DIP開關,板卡上有幾個不同的跳線,選擇不同的跳線方式使板卡使用不同的硬體資源﹔
    • 軟體設置,板卡廠商附送設置軟體(一般是DOS程序),能夠對板卡使用的資源進行設置。有的板卡還提供驅動程序, 可以自動探測空余的資源,並重新更改板卡使用的資源設置,這種能通過軟體驅動改變資源設置的板卡被稱為無跳線板卡( Jumpless)。只是其提供的驅動基本都是DOS/Windows驅動﹔
    • 即插即用(PNP, Plug & Play),板卡遵循PNP標準由系統分配空余資源﹔

      對於這三種不同的硬體類型,更改板卡資源配置的方式也不同,對於前兩種方式的板卡,可以直接更改跳線或DIP 開關,或者在DOS下使用設置軟體來設置它占用的資源。即使是Jumpless的板卡,由於硬體廠商提供的驅動只是D OS/Windows驅動,因此只能使用其預設資源設置而不能利用其自動探測的優勢,當然設置程序可以幫助更改其預設 的資源設置。

      而對於Plug and Play的ISA板卡,問題較為複雜,因為PNP板卡要求系統為其分配資源設置。有 些板卡的設置軟體,可以設置這個板卡不使用Plug and Play方式,而直接指定占用的硬體資源。這樣就將PN P類型的板卡用作軟體設置的板卡,由安裝者來保証沒有硬體設置衝突存在,這是一種思路簡單的解決辦法。

      如果使用Plug and Play的方式為板卡分配資源,可以選擇兩種不同的分配方式,一種是由BIOS設 置硬體的資源,BIOS在自檢時就分配資源給PNP卡,然後當操作系統啟動時根據這個設置分配板卡占用的資源。另一種 方式完全由操作系統分配PNP卡占用的資源,BIOS不給PNP卡分配硬體資源。

      FreeBSD能夠支持Plug and Play,但是由於ISA總線的PNP卡通常是某種標準ISA板卡 的兼容產品,驅動程序不會自動分配資源,因此就需要在UserConfig中進行手工設置或調整,PCI PNP卡就 不存在這個問題。為了避免煩瑣的手工調整,可以使用BIOS給Play and Play板卡分配初始資源,如果必要 再手工調整設置。支持PNP卡的主板BIOS中通常有一個Plus & Play OS選項(或類似描述詞句 ),這個選項用於決定是否為PNP板卡分配資源,應該將該選項關閉(選擇 “Disable” , “No” , “ non-Win95” 等),讓BIOS為板卡分配初始資源。

      通過更改硬體的設置,來解決硬體衝突問題。此後將這些硬體配置信息記錄下來,用來解決安裝過程中的問題。即使 電腦上不存在硬體衝突問題,記錄下這些配置信息也是非常有用的。可以通過查看各個硬體的手冊或硬體提供的設置軟體來 了解這些硬體的配置情況,如果電腦上已經安裝有操作系統,可以使用這個操作系統上的軟體來輔助了解硬體的配置信息, 例如DOS下的MSD,Windows 95下控制面板中的系統選項等,這些軟體中將顯示出目前電腦已經配置過的硬 件信息。

      對於PNP卡,由於系統資源是電腦啟動後才獲得的,因此使用DOS/Windows下的軟體能更快捷的獲得 必要的信息。雖然PNP中資源是動態分配的,但是這個值仍然能起到非常有用的參考作用,尤其對於使用BIOS來分配資 源的板卡,這個資源設置就更有意義一些。

  • 安裝介質
  •   為了安裝FreeBSD,必須還要有FreeBSD系統的安裝介質,FreeBSD支持的安裝介質有以下幾種 :

    • CD-Rom
    •   由於光驅已經成為個人電腦的標準配置,因此使用FreeBSD的安裝光碟來安裝FreeBSD是最容易也最 常見的安裝方式。並且當個人電腦系統支持CD-Rom啟動時,就可以直接使用光驅來安裝FreeBSD,而不需要啟 動軟碟的幫助。使用CD-Rom做安裝介質要求電腦配有FreeBSD可以識別的光碟驅動器。

    • 網路伺服器
    •   安裝檔案位於網路伺服器上,安裝程序通過ftp或者nfs,遠程訪問網路安裝服務的相應伺服器上,獲得安裝所 需的各個檔案。網路安裝要求系統必須連接到網路上,而且網路的傳輸速度也要比較穩定才合適。被安裝的電腦必須具有網 卡或廣域網接口,以支持網路。

    • 磁帶
    •   這是一種較老式的安裝方法,但十分有效。如果有tar格式的安裝磁帶,安裝過程十分簡單。使用這種安裝方式, 電腦必須擁有一台磁帶機。

    • 軟碟
    •   也是一種較古老的安裝介質,除非條件限制,很少有人有耐心使用軟碟作安裝介質,因為這需要太多的軟碟,並且軟 碟是不可信賴的存儲介質,很難保証復制的軟碟沒有錯誤。FreeBSD之所以支持這種方式,是因為軟碟驅動器是個人計 算機的標準配置,這使得FreeBSD能夠在最惡劣的特殊條件下也能進行安裝。

    • 硬碟
    •   將FreeBSD的安裝檔案預先拷貝到電腦系統中已有的硬碟分區中,該分區的類型可以是DOS分區或者 FreeBSD分區。這要求電腦中有足夠的硬碟空間並已有格式化後的分區。這種方式是前面幾種方式的折中方式,如果網路 不穩定,或者光碟質量有問題,或者要保留安裝介質以便再次安裝,都可以先復制必需的內容到硬碟上。

    • 安裝介質中的內容
    •   無論哪種安裝介質,其中都是存儲了要構建一個FreeBSD系統所需要的系統軟體,由於CD-Rom和Internet 越來越普及,CD-Rom和網路安裝方式是最常用的方法。這裡就以FreeBSD的安裝光碟為例,簡單介紹 FreeBSD安裝介質上的主要內容。

        FreeBSD使用的安裝光碟是標準的ISO 9660格式的光碟,這種格式預設只支持8.3格式的檔案名( 8個字符的基本檔案名,3個字符的擴展名,不區分大小寫),由於Unix下的檔案名比較長,且區分大小寫,因此Fre eBSD及其他Unix通常使用Rock Ridge方式對檔案名進行映射,在每個目錄下使用一個檔案TRANS.TBL 記錄8.3格式的檔案名與Unix使用的長檔案名之間的對應關系。

        FreeBSD安裝光碟中的內容可分為三類:

      第一類為安裝說明檔案,這些檔案位於安裝介質中的根目錄下:

      ABOUT.TXT: 關於FreeBSD的簡單信息
      HARDWARE.TXT: FreeBSD支持的硬體列表
      INSTALL.TXT: 介紹如何安裝FreeBSD的說明
      README.TXT: 介紹安裝介質上其他檔案,應該首先閱讀
      RELNOTES.TXT: 發行這個版本的FreeBSD系統時的一些通知
      LAYOUT.TXT: FreeBSD安裝系統的檔案分布的說明
      UPGRADE.TXT: 進行升級FreeBSD的一些注意事項

      第二類是進行安裝時能用到的DOS工具程序,主要用於制作啟動軟碟。

      tools目錄: 準備安裝所需要的DOS工具程序,包括制作啟動軟碟的DOS程序,以及幫助整理硬碟的 工具,從DOS下啟動FreeBSD的程序等。
      floppies目錄: 包含安裝軟碟、啟動軟碟、系統修正軟碟的鏡象檔案的目錄

      第三部分就是FreeBSD系統的安裝檔案

      XF86333目錄: 包含XFree86軟體的目錄,其中版本號會隨著系統升級而提升到更新的版本
      bin目錄: 系統基本檔案的安裝目錄,這是安裝FreeBSD所需的必備目錄
      catpages目錄: 格式化後的普通文本方式的系統手冊
      compat1x、 compat20、 compat21 和compat22目錄: 包含與以前各個版本的FreeBSD相兼容的庫
      des目錄: 由於美國法律的限制,包含DES算法的軟體未經許可不能出口到美國和加拿大之外, 因此FreeBSD預設使用MD5算法以避開這個問題,這個目錄中包含與des算法的相關軟體,以便需要這個 算法的使用者可以從北美之外的Internet上獲得並安裝。
      dict目錄: 系統字典安裝目錄
      doc目錄: 系統文檔安裝目錄
      games目錄: 包含一些Unix小遊戲
      info目錄: GNU info文檔的安裝目錄
      manpages目錄: 系統手冊的安裝目錄
      packages目錄: 包含最常用的軟體
      ports目錄: Ports Collection的原始碼
      proflibs目錄: 系統運行庫
      src目錄: 系統原始碼的目錄

        這些安裝檔案可分為三類,一類是系統軟體,用於構建基本的FreeBSD系統。這些軟體存儲在安裝介質下的b in, des, dict, doc, games, info, manpages,catpages, com pat1x, compat20, compat21, XF86333和proflibs目錄中。為了便於管理,這 些檔案使用tar和gzip進行打包壓縮,其中前六個目錄下的檔案被分割為大小為240,640字節的檔案,這樣在需 要的時候,可以拷貝到軟碟上進行安裝。然而並不是所有的內容都必須安裝,可根據不同的安裝選項,有選擇的安裝不同目錄 下的不同內容,只有bin目錄下的系統軟體才是必須的。

        另一類是可選軟體,如果說基本系統是骨架,那麼應用軟體就是血肉。沒有應用軟體,一台FreeBSD系統就不 能充分發揮它的全部功能。FreeBSD使用Ports Collection的機制來管理應用軟體,將應用軟體移植 到FreeBSD下,每個移植的軟體被預編譯為一個個的二進制軟體包,稱為Package,存儲在安裝介質的pack ages目錄下,因此二進制軟體包的管理機制又稱為Packages Collection。由於空間的限制,安裝光 碟上並不能包含所有軟體的二進制形式的Packages,但在FreeBSD的ftp站點上提供了所有最新的軟體包。

        此外就是系統的原始碼,包括核心的原始碼、各個程序的原始碼以及Ports Collection的原始碼。 一個正常的FreeBSD系統至少應該安裝核心的原始碼,以便根據自己電腦的實際情況來定制核心。這些安裝檔案位於 src和ports目錄下。

        其他安裝方式下的安裝介質內容與CD類似,但在內容上也略有不同。因為安裝組件都是可選的,因此不同的安裝介 質將可以選擇不同的安裝組件。例如軟碟安裝介質可能只包括最基本的系統(bin目錄下的檔案),而FreeBSD的主 ftp站點ftp.freebsd.org上,包括了所有的安裝檔案。

        要根據不同情況和條件,來選擇不同安裝介質。如果電腦系統具備網路界面並與Internet的連接快速且穩 定,那麼就可以使用網路安裝方式,這僅僅需要制作啟動軟碟(如果電腦上已經安裝有DOS,甚至可以連啟動軟碟都不需 要了),以啟動FreeBSD和安裝過程。如果購買了FreeBSD的安裝光碟,就可以選用光碟安裝方式等等。

        目前由於硬體發展非常迅速,因此光驅對於個人電腦已經是標準配置,因此使用光碟作安裝介質應該是最為方便的 首選安裝方式。

  • 準備硬碟和軟碟
  •   在IBM兼容的個人電腦上使用的硬碟控制器有以下種類:

    • 最古老類型的ST-506以及ESDI,目前已經很少人使用這些驅動器,但是FreeBSD的wd驅動程序仍然支持它們﹔
    • IDE和增強型IDE(EIDE),是目前最流行的個人電腦硬碟控制器,每台電腦能接兩個控制器,每個控制器可 以接兩個設備(硬碟或光驅),分別為這個控制器上的主設備和從設備。FreeBSD的wd驅動程序支持EIDE,wd驅動程序探 測到的第一個IDE控制器的主硬碟為wd0,第一個IDE控制器的從硬碟為wd1,第二個IDE驅動器的主硬碟為wd2,從硬碟為wd3﹔
    • SCSI控制器,由於SCSI控制卡承擔了大量的處理任務,降低了中央處理器的負載,更適合用做伺服器和高性能工 作站的磁碟驅動器。早期的SCSI控制器能接7個設備,而Wide SCSI控制器可以接15個設備。SCSI板卡種類繁多,對不同 的SCSI控制器,FreeBSD需要使用不同的驅動程序來進行支持。與IDE驅動器相同,SCSI硬碟驅動器也按檢測到的順序排列 或在核心中規定的順序,從da0向後,依次類推。

      在FreeBSD 2.2.x版本中使用的SCSI驅動程序為與3.x版本不同,舊版本驅動程序使用的SCSI 硬碟設備名為sd0等。

    1. 硬碟分區方式及命名
    2.   在個人電腦中,每個硬碟可以分為四個磁碟分區,其分區信息存儲在該硬碟前部的分區表中,而每個分區可以由不 同的操作系統進行管理。常見的分區分為基本分區和擴展分區,又根據使用的不同檔案組織格式,可以分為DOS的FAT分 區,FreeBSD的UFS分區、NT的NTFS分區,Linux的EXT2FS分區等。

        一個硬碟上可以劃分一個擴展分區,擴展分區與基本分區不同,它實際上不直接在上面存儲實際數據,而是在上面再 劃分邏輯分區,這樣又可以劃分四個邏輯分區。使用DOS/Windows操作系統的電腦必須擁有一個使用DOS的F AT檔案系統的基本分區,這個將對應於DOS下的C碟,然後將其他空間劃分到擴展分區中,在擴展分區中再劃分DOS邏 輯分區,相應的FAT分區依次對應於D碟、E碟等。當其他的操作系統使用硬碟時,這個操作系統應該單獨占用一個分區, 在這個分區上使用自己的檔案組織格式。

        DOS只能使用C、D等碟符來標志FAT格式的磁碟分區,它不能標識其他檔案組織格式的磁碟分區,如果一個硬 碟上沒有FAT格式的磁碟分區,那麼就不會存在C碟、D碟等。然而其他更強大的操作系統通常能識別多種檔案組織格式, 通常按照分區在分區表中的順序來標識他們。例如FreeBSD將記錄在分區表上的分區,分別稱作wd0s1,wd0s 2,wd0s3,wd0s4,wd0為第一個IDE硬碟,使用s1標識第一個分區等。如果某個分區(例如第二個分區w d0s2)為擴展分區,那麼其上面的邏輯分區,其順序就從5算起,為wd0s5,wd0s6,wd0s7,wd0s8 。因此一個磁碟上最多只能有8個不同的分區同時存在。

        然而畢竟擴展分區上的邏輯分區和基本分區還有所差別,因此不是所有類型的檔案組織方式都可以適合在邏輯分區中 使用。FAT、NTFS和EXT2FS類型可以被在邏輯分區上使用,但是FreeBSD使用的UFS不能被邏輯分區使 用,只能是在基本分區中使用UFS檔案組織格式。這是由於FreeBSD是一個完全獨立的操作系統,使用的分區方式繼 承自BSD Unix,早在個人電腦出現之前,BSD就已經形成了自己的管理硬碟和分區的方式了。

        BSD Unix傳統的使用硬碟方式是獨占整個硬碟,只有檔案系統或交換空間而沒有分區的概念,也不使用硬碟 的分區表來保存分區信息,因此也不存在基本或擴展分區。BSD使用Slice來表示硬碟上的一個部分,一個Slice 是硬碟的一個部分,它可以是一個檔案系統也可以是一個交換空間。Slice的概念與個人電腦傳統使用的Partit ion(分區)概念類似,因此也可以使用分區來稱呼它。BSD方式的管理方法能管理多達8個Slice,BSD按字母 順序依次命名他們為wd0a,wd0b等。按習慣用法,wd0a用於根檔案系統 “/” ,wd0b用於交換空間,w d0c用於表示整個硬碟空間,wd0e用於/usr檔案系統等。

        然而FreeBSD畢竟是運行在個人電腦平台上的操作系統,其他操作系統使用Partition,而Fre eBSD使用Slice,就必須採用一種折中的方式,使得FreeBSD能和其他操作系統相互協作,處理磁碟分區。F reeBSD的磁碟管理方式就是一種兼容的硬碟使用方式。每個FreeBSD系統將占用一個獨立的UFS基本分區,這 個分區與其他操作系統使用分區的方式相同。在基本分區內再使用BSD的Slice方式進行管理,這種方式就類似於DO S在擴展分區內分割邏輯分區的方式。

        假設FreeBSD使用了第三個分區wd0s3,則在這個分區內劃分的相應Slice就被稱為wd0s3a, wd0s3b等,其中wd0s3a預設被用做根檔案系統等。這時仍然可以使用傳統的名字wd0a來稱呼wd0s3a, 使用wd0b稱呼wd0s3b,以與BSD傳統方式兼容的方式稱呼這些Slice,但條件是wd0s3應該是wd0硬 碟上第一個UFS類型的基本分區(或唯一的UFS基本分區),wd0碟上的其他UFS分區中的Slice就只能使用全 稱了。由於Slice和Partition都是用於分隔磁碟(或分區),以更方便的利用磁碟空間,為了簡捷,可以將在 UFS基本分區中劃分的Slice,如wd0s3a,稱作wd0s3分區的子分區。

        下面為DOS和FreeBSD(多操作系統並存)下常用硬碟分割的方式。

    3. 準備硬碟
    4.   如果不是在新系統中安裝FreeBSD,安裝系統之前需要備份相應硬碟上的重要數據。因為安裝過程將直接操作 硬碟,對硬碟進行分區和格式化(在Unix下稱為建立檔案系統),雖然在一定條件下安裝者能夠不破壞原有的數據,但是 有可能由於某次誤操作,導致重要數據的無法恢復。因此建議對該電腦上的所有硬碟數據做一次完整備份。這些數據的備份 任務要使用電腦已經安裝好的操作系統來完成。

        然後需要確定將系統安裝在何處,FreeBSD必須獨占一個基本分區,要保留出自由空間就行了。硬碟上的自由 空間包括兩個含義,一是分區表中的位置上的空間,四個分區表沒有占滿,另一個是硬碟空間,現有的分區沒有占滿所有的硬 碟。然而,安裝程序也能刪除現有分區,並重新分割硬碟。

        如果是在一個新硬碟上安裝FreeBSD系統,但又打算以後還安裝DOS等其他操作系統,最好使用DOS程序 fdisk.exe先劃分出一個基本分區。這個分區的大小都沒有什麼意義,它只是用來給FreeBSD安裝程序提示B IOS的硬碟數據映射方式的,否則FreeBSD安裝程序就不考慮BIOS的映射方式。由於這個分區只起到提示作用, 可以在安裝過程中刪除,重新按照原有的考慮分割硬碟。如果沒有這樣的分區,FreeBSD安裝程序中的硬碟映射數據可 能和BIOS中的設置不一致,當然安裝者可以進入BIOS,記錄下硬碟的柱面、磁道和扇區映射數據,在安裝過程中手工 更改映射數據設置。

        硬碟映射數據不一致的問題,來源於個人電腦BIOS與Unix對硬碟的理解不同。個人電腦使用柱面、磁道 和扇區的概念來理解硬碟上數據的位置,而Unix只將硬碟等存儲設備理解為分為一個個塊的簡單線形設備。這就導致Fr eeBSD中的Slice和BIOS中的Partition劃分時的不同。如果電腦上只有FreeBSD一種系統獨 占硬碟,FreeBSD只需要知道每個Slice的大小就行了,按塊讀取數據,不會出現任何問題。但如果與另一種操作 系統共享硬碟,那麼就必須首先確定相應的Partition位置,這就受到BIOS的限制。一旦FreeBSD對柱面 、磁道和扇區理解與BIOS設置的不同,必然就發生不能找到分區的正確位置問題。

        一般情況下,找不到分區位置的情況不會發生,因為FreeBSD系統能夠偵測到硬碟的數據。但是個人電腦上 的BIOS會對柱面、磁道和扇區數據重新進行映射,導致BIOS以與硬碟本身並不一致的方式來分割硬碟上的Parti tion。因此對於在一個新硬碟上安裝FreeBSD,BIOS又對磁碟數據進行了重新映射的情況下,就需要記錄下B IOS映射的數據用於糾正可能出現的映射數據問題。BIOS對硬碟數據進行映射發生於兩種情況下,一種情況為使用SC SI硬碟時,SCSI硬碟本身使用線性地址,而BIOS必須要求柱面、磁道和扇區的概念,因而BIOS就對SCSI硬 碟進行映射。另一種情況是對EIDE硬碟,由於個人電腦BIOS的設計問題(系統調用僅支持1024柱面的限制), 支持大硬碟的BIOS也要將EIDE硬碟重新映射為合法的硬碟數據(使用LBA或其他映射方式)。因此即使在安裝系統 之後,如果隨意更改BIOS中的硬碟映射方式,就會使得分區的位置被映射到一個錯誤的位置上,發生啟動錯誤。

        FreeBSD本身並不使用任何BIOS調用來處理硬碟存取,而是使用自己內部的硬碟驅動程序。因此,只要啟 動程序將控制權交給FreeBSD系統之後,BIOS中的硬碟映射方式就沒有意義了。但是,啟動系統的任務是由BIO S或使用BIOS調用的啟動管理程序來完成的,BIOS必須能找到操作系統的啟動部分才能載入相應的操作系統。這樣就 有兩種有趣的情況發生,第一種情況下,雖然BIOS的映射數據可能被改動了,但是改動之後的數據中操作系統分區的初始 位置沒有變化,這樣BIOS仍然能載入操作系統的啟動部分,來啟動FreeBSD。這種情況最常發生在讓FreeBS D系統獨占整個硬碟的情況時,這樣操作系統的啟動就基本不受BIOS的映射數據的影響了,這種情況就是傳統的BSD的 硬碟管理模式,硬碟中不存在Partition。

        另一個情況發生在FreeBSD分區的位置在1024柱面之後,由於BIOS的1024柱面限制,它不能引導 1024柱面之後的分區。因此給FreeBSD留的空間要位於1024柱面之內,才能使安裝後的FreeBSD系統能 夠正常啟動。在系統啟動之後,FreeBSD就不再使用BIOS進行任何操作,則此時就可以處理1024柱面之後的硬 碟了。在這種情況下,BIOS的硬碟映射能起到幫助作用,因為如果BIOS使用了LBA或其他方式重新映射了硬碟數據 ,每個硬碟分區就將保留在1024柱面之內,就不存在這個問題了。因此,如果大硬碟使用的是LBA等模式,就不存在啟 動問題,如果BIOS沒有映射硬碟數據,就要注意分區的位置,以便系統能正確啟動。但是,在硬碟上已有分區的情況下, 不應該調整硬碟的映射數據,因為這將丟失已有的分區數據。

        因此如何處理分割分區就需要安裝者仔細考慮。對於一個新系統,可以選擇讓FreeBSD獨占整個硬碟或者保留 一個小的DOS分區。讓FreeBSD獨占整個硬碟的好處是硬碟不受BIOS的影響,因此這個硬碟可以立即安裝到其他 FreeBSD系統下,而不需要考慮不同BIOS的不同映射方式。但是保留一個小DOS基本分區也存在相當多的好處, 因為Intel平台下的多數硬體配置和診斷程序為DOS程序,將這些配置程序保留在DOS分區內,便於更改硬體配置和 診斷故障。具體如何選擇依賴於安裝者的考慮,一般建議保留一個DOS分區。

        對於在已安裝有操作系統的硬碟上安裝FreeBSD系統,處理分區就更需要小心。大多數預裝DOS/Wind ows的個人電腦通常使用DOS基本分區和擴展分區占滿了整個硬碟空間,沒有空余的自由硬碟空間留給FreeBSD 。因此就需要將一個分區留給FreeBSD,就需要在安裝之前把這個分區中的數據都進行備份。此外還需注意如果是要將 擴展分區留給FreeBSD,就必須將整個擴展分區留給FreeBSD,FreeBSD不能在擴展分區中的某個邏輯分 區上安裝。如果使用者想保留已有分區和數據,情況就比較複雜了,有一些軟體能夠在不損失數據的條件下,更改已有分區大 小,這樣就能從現存分區中擠出空余空間來安裝FreeBSD,這些軟體有自由軟體FIPS(在安裝光碟中提供),商業 軟體PartitionMagic等。

        FIPS能夠將FAT類型的DOS基本分區分割為兩個分區,第一個分區保留原有數據,而可以使用FIPS分出 的第二個分區安裝FreeBSD。然而這種操作直接操作硬碟,具有非常大的危險性,如果操作失誤,很可能導致分區錯誤 及數據丟失。建議在FIPS操作之前,備份硬碟上的重要數據。此外,還應該首先使用磁碟整理工具來整理磁碟上的檔案。 長期使用電腦,使硬碟上的檔案被零零碎碎的放在硬碟的不同位置上,因此必須將所有的檔案都移動到硬碟的前面,以減少 錯誤發生的可能性。微軟的Defrag工具以及其他第三方廠商的工具,如Norton SpeedDisk,都提供了 這個能力。

        Defrag程序不移動系統和隱藏檔案,因此對於可能位於磁碟後部的系統和隱藏檔案,必須在運行Defrag 之前使用微軟的attrib命令去除這些屬性(包括Windows的交換檔案),由於有這些屬性的DOS系統檔案IO .sys和MSDOS.sys總是位於磁碟的前部,因此不需要對它們進行處理。運行Defrag不能使用 “Defr ag File Only” (只整理檔案碎片)選項,因為該選項並不把所有的檔案都移動到硬碟前部。

        運行了Defrag之後,最好使用Scandisk來檢查一下是否存在磁碟錯誤,如果一切正常,並且分區表還 沒有占滿(總計不到四個分區),就可以運行FIPS來分割DOS基本分區了。FIPS執行程序位於安裝介質下tool s目錄中,由於FIPS是一個DOS程序,直接訪問硬碟,因此應該在DOS模式運行它。它在運行時能將原有分區表保存 到軟碟上,命名為RESTORRB.000(如果多次運行FIPS,檔案名將依次增加為RESTORRB.00x), 可以使用隨FIPS一起提供的RESTORRB來恢復原有分區數據。

    5. 準備軟碟
    6.   常用的啟動FreeBSD安裝程序方式主要有三種,光碟啟動、DOS啟動和軟碟啟動。如果電腦的不支持光碟 啟動,並且沒有安裝有DOS系統或沒有DOS啟動程序fbsdbot.exe和kernel檔案,那麼就需要使用啟動 軟碟啟動。

        在安裝介質的floppies目錄中保存有啟動軟碟的鏡象檔案boot.flp,使用者可以在其他電腦中的 DOS或者Unix下制作出這張軟碟。然而,在新版本下這個鏡象檔案是2.88MB的高密度軟碟鏡象,必須要求電腦 支持2.88MB的軟碟驅動器才可以,因此一般不使用這個鏡像檔案,它更常用來作為啟動光碟的啟動碟鏡像。系統也提供 了兩個1.44MB的普通磁碟鏡象檔案kern.flp和mfs.flp,其中kerm.flp為系統核心,mfs. flp為將被讀到內存中MFS檔案系統中的root檔案系統,一般需要制作這兩個軟碟,用來啟動安裝系統。由於磁碟鏡 像要占滿整個磁碟,因此對軟碟要求很高,軟碟中不能有壞塊。如果制作的軟碟不能正常啟動,最大的原因就是使用了非10 0%完好的軟碟,

        制作啟動軟碟必須使用一個現存Unix或DOS系統。

        在DOS下,使用程序rawrite.exe或fdimage.exe(tools目錄下)來將一個軟碟鏡象 檔案復制到軟碟中。可以使用它來制作啟動軟碟、fixit軟碟等。

        E:\TOOLS:> FDIMAGE E:\FLOPPIES\KERN.FLP

        在FreeBSD或其他Unix中要使用dd命令制作啟動軟碟,然而要注意在不同的Unix下,軟驅對應的設 備檔案名字是不同的,FreeBSD下為rfd0。

        # dd if=/cdrom/floppies/kern.flp of=/dev/rfd0