FreeBSD使用大全(05):安裝之前的准備
 


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

王波

第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

未完,待續。。。  



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