對(duì)于許多電腦用戶來(lái)說(shuō),F(xiàn)reeBSD還是一個(gè)比較陌生的系統(tǒng)。本文將以FreeBSD 4.7 Release為例,一步一步地帶您安裝一份完整的FreeBSD操作系統(tǒng)。
安裝前的準(zhǔn)備
FreeBSD對(duì)于系統(tǒng)的硬件適應(yīng)能力比較強(qiáng)(相比linux可能稍差,特別是對(duì)于新的顯示卡的支持;但對(duì)于服務(wù)器常用的硬件,包括SCSI設(shè)備的支持是相當(dāng)完善的)。IA平臺(tái)的多數(shù)處理器,下至386,上至Pentium-4及其兼容的CPU,都能夠運(yùn)行FreeBSD。
為了有效地安裝、運(yùn)行FreeBSD,我個(gè)人推薦安裝FreeBSD的系統(tǒng)至少要有2GB的剩余硬盤(pán)空間,以及至少64MB內(nèi)存。這樣配置的電腦在今天是很容易找到的。考慮到FreeBSD一般都被配置作為服務(wù)器使用,上面的配置要求顯然是很容易做到的。
對(duì)于服務(wù)器來(lái)說(shuō),雙啟動(dòng)是不合適的(服務(wù)器往往要求持續(xù)、長(zhǎng)時(shí)間工作,而切換操作系統(tǒng)無(wú)疑需要停止服務(wù)。此外,雙啟動(dòng)的系統(tǒng)穩(wěn)定性比較差,某個(gè)操作系統(tǒng)的崩潰很可能破壞另一個(gè)操作系統(tǒng))。
FreeBSD支持和其他操作系統(tǒng)并存、并在開(kāi)機(jī)時(shí)通過(guò)菜單選擇使用的操作系統(tǒng),但我個(gè)人非常反對(duì)以這種方式使用FreeBSD。
那么,讓我來(lái)從頭到尾地安裝一臺(tái)FreeBSD服務(wù)器,并說(shuō)明FreeBSD的安裝。為了安裝FreeBSD,我準(zhǔn)備了這樣一臺(tái)電腦:
CPU: Pentium II-233、內(nèi)存64MB、硬盤(pán)(IDE)6GB、PS/2鍵盤(pán)、鼠標(biāo)、20x光驅(qū)、無(wú)軟驅(qū)、RealTek8139網(wǎng)卡(TP-LINK)。
上述配置在今天是很容易做到的。當(dāng)然,就服務(wù)器而言,這個(gè)配置確實(shí)慘了點(diǎn),不過(guò)FreeBSD在上面運(yùn)行,并承擔(dān)數(shù)據(jù)庫(kù)、動(dòng)態(tài)網(wǎng)頁(yè)等服務(wù)是完全沒(méi)有問(wèn)題的。
首先是準(zhǔn)備FreeBSD的安裝盤(pán)。FreeBSD有許多種安裝方式,最簡(jiǎn)單易行的方式就是使用光盤(pán)安裝;不過(guò)盡管如此,在沒(méi)有軟驅(qū)、光驅(qū)的計(jì)算機(jī)上也是可以通過(guò)BOOTP服務(wù)采用遠(yuǎn)程引導(dǎo)的方式來(lái)安裝的。
考慮到這種情況比較少見(jiàn)(筆者曾經(jīng)在一臺(tái)沒(méi)有軟驅(qū)、光驅(qū)的計(jì)算機(jī)上成功安裝過(guò)FreeBSD,但方法是將硬盤(pán)掛接在另一臺(tái)計(jì)算機(jī)上,而不是通常的BOOTP),在此不介紹。
為了安裝FreeBSD,我準(zhǔn)備了一張空的CD-R。安裝FreeBSD最少只需要2張1.44MB的空白軟盤(pán)(其余文件使用FTP獲得),而安裝FreeBSD只需要第一張光盤(pán)就夠了。除非你的計(jì)算機(jī)很慢,或無(wú)法接入Internet,否則一般情況只需要下載第一張光盤(pán)的鏡像。
由于網(wǎng)絡(luò)中心的FTP上提供了FreeBSD 4.6全部四張光盤(pán)的鏡像,以及4.6.2的前兩張光盤(pán),因此我直接下載并刻了后者的第一張光盤(pán)。
打開(kāi)計(jì)算機(jī),進(jìn)入BIOS Setup。在其中選擇讓計(jì)算機(jī)從光盤(pán)啟動(dòng)(這是關(guān)鍵步驟,雖然FreeBSD也可以從DOS環(huán)境中啟動(dòng)安裝過(guò)程,但那可能會(huì)有一些問(wèn)題)、禁用一切用不到的設(shè)備,包括串口、并口、軟驅(qū)控制器(這么做主要是為了提高性能,因?yàn)橥鈬O(shè)備可能會(huì)向主機(jī)發(fā)送中斷請(qǐng)求,而用不到的設(shè)備發(fā)送請(qǐng)求除了浪費(fèi)CPU的時(shí)間之外沒(méi)有什么其他作用)。
FreeBSD安裝光盤(pán)上的系統(tǒng)使用的是GENERIC內(nèi)核,這個(gè)內(nèi)核可以適應(yīng)絕大多數(shù)系統(tǒng)的情況。當(dāng)然,正如他的名字“GENERIC(通用)”,這也帶來(lái)的較低的性能,例如,這個(gè)內(nèi)核不能夠發(fā)揮雙CPU的能力,等等。
不過(guò)既然安裝過(guò)程只會(huì)進(jìn)行一次,我們也不必過(guò)分地在意它。安裝光盤(pán)啟動(dòng)(對(duì)于軟盤(pán)啟動(dòng)來(lái)說(shuō),是根據(jù)提示將兩張軟盤(pán)的內(nèi)容全部加載到內(nèi)存中)完成后,首先出現(xiàn)的是配置內(nèi)核。
配置內(nèi)核通常不是必需的,因?yàn)镕reeBSD能夠自動(dòng)識(shí)別硬件。然而,如果你的硬件配置比較特殊(例如,有兩塊網(wǎng)卡,使用特殊的IRQ,比較古老,等等),那么可能需要手工配置一下內(nèi)核。
對(duì)于絕大多數(shù)情況來(lái)說(shuō),只要?jiǎng)h除那些用不到的設(shè)備,就能夠正常完成FreeBSD的安裝;如果你對(duì)于自己的硬件不熟悉,這一過(guò)程甚至可以跳過(guò)。
我個(gè)人比較喜歡刪除不用的設(shè)備,于是選擇Visual方式,將不需要的設(shè)備統(tǒng)統(tǒng)刪除。最后,按Q保存配置,進(jìn)入FreeBSD的安裝程序sysinstall。
FreeBSD基本系統(tǒng)的安裝
作為一個(gè)服務(wù)器管理員,經(jīng)常性的服務(wù)器軟件更新是必不可少的。FreeBSD提供了非常便捷的升級(jí)方式——cvsup,它可以從FreeBSD中央cvsup服務(wù)器,或某個(gè)cvsup鏡像上獲取FreeBSD的部分或全部源代碼,而且,它只下載那些修改過(guò)的源代碼,并且可以根據(jù)需要選擇適合你的版本(使用-STABLE可以提供較好的穩(wěn)定性以及操作系統(tǒng)的最新特性,多數(shù)管理員都會(huì)選擇這個(gè);使用-RELEASE能夠獲得成熟產(chǎn)品的品質(zhì),盡管話是這樣說(shuō),但實(shí)際上選擇這一分支的人很少;使用-CURRENT的用戶主要是參與FreeBSD開(kāi)發(fā)的人員,這個(gè)分支包含了所有即將進(jìn)入-STABLE分支的新特性,但不要指望這個(gè)分支能夠提供必要的穩(wěn)定性保證,也不要指望它能夠帶來(lái)很好的性能,但所有的安全問(wèn)題都是首先在這個(gè)分支內(nèi)修正的。本文將在后面詳細(xì)介紹這些)。
一旦最初的內(nèi)核配置完成,它就會(huì)立即啟動(dòng),并根據(jù)配置文件啟動(dòng)sysinstall(我們將看到一個(gè)標(biāo)準(zhǔn)的文字模式配置界面,這有點(diǎn)類似于早期Visual Basic For MS-DOS編寫(xiě)的應(yīng)用程序的界面。選擇Standard進(jìn)入標(biāo)準(zhǔn)的FreeBSD安裝過(guò)程。首先是對(duì)磁盤(pán)進(jìn)行分區(qū)。
FreeBSD對(duì)于磁盤(pán)的管理和Windows有比較大的差別。一個(gè)磁盤(pán)上通常有一個(gè)Partition就夠了,而一個(gè)Partition又可以分成若干個(gè)slice,并加以標(biāo)記(label)。實(shí)際上,F(xiàn)reeBSD的slice基本上可以等同于Windows的磁盤(pán)分區(qū),或卷的概念。
為了保證與FreeBSD共存的系統(tǒng)能夠啟動(dòng),默認(rèn)情況下FreeBSD會(huì)保留一部分磁盤(pán)空間(64 cyl)。對(duì)于單一操作系統(tǒng)的計(jì)算機(jī)來(lái)說(shuō),這是完全沒(méi)有必要的。分區(qū)時(shí)按Shift+F可以選擇不使用這個(gè)特性,不過(guò)這種情況下,除了徹底毀掉這套FreeBSD之外,恐怕就沒(méi)有其他方法能夠從這塊硬盤(pán)上引導(dǎo)其他操作系統(tǒng)了。為了完全使用磁盤(pán)空間,我選擇了不保留預(yù)留空間。
隨后是在這個(gè)Partition上創(chuàng)建slice。和Linux的情況類似,F(xiàn)reeBSD也使用單獨(dú)的交換區(qū)。這種設(shè)計(jì)可以避免碎片,也防止了對(duì)文件系統(tǒng)的影響,性能較好。通常情況下交換分區(qū)是內(nèi)存的2-2.5倍,這足以應(yīng)付日常的突發(fā)事件。
/var用于保存那些不在集群中共享的文件,/tmp用來(lái)保存臨時(shí)文件,而/usr用來(lái)保存那些需要在集群中同步的文件。/就不用說(shuō)了,它保存的是啟動(dòng)系統(tǒng)需要的文件。
通常給/分配的空間是128MB,/tmp和/var各256MB,剩下的都分給/usr。不過(guò)也有例外,如果打算做一個(gè)大型的郵件系統(tǒng),則/var要大一些(通常郵件系統(tǒng)依賴/var來(lái)保存郵件)。當(dāng)然,各個(gè)slice可以mount到不同的地方(例如,你可以把曾經(jīng)的/usr變成/var),不過(guò)最開(kāi)始配置好可以減少很多麻煩。
當(dāng)然,偷懶的方法也是有的。在沒(méi)有slice,或沒(méi)有完全配完slice的情況下按A,系統(tǒng)會(huì)給出一組(或?qū)κO碌膌abel)默認(rèn)的配置。如果你打算單純提供Web+數(shù)據(jù)庫(kù)這樣的服務(wù),完全可以直接接受這組配置。
從FreeBSD 4.x開(kāi)始,ufs支持了一個(gè)叫做SoftUpdates的技術(shù)。SoftUpdates的主要設(shè)計(jì)目標(biāo)是提高文件系統(tǒng)性能。除了/所在的slice之外,所有的ufs slice都應(yīng)打開(kāi)SoftUpdates,這樣對(duì)于提高系統(tǒng)整體性能很有好處。(/雖然也是ufs slice,但打開(kāi)SoftUpdates會(huì)造成系統(tǒng)不穩(wěn)定——FreeBSD文檔如此警告,而筆者確實(shí)也吃過(guò)這個(gè)虧。不過(guò),由于/的內(nèi)容不需要經(jīng)常變化,不打開(kāi)SoftUpdates和打開(kāi)了SoftUpdates幾乎沒(méi)有性能上的差別) 。SoftUpdates可以隨時(shí)通過(guò)tunefs(來(lái)打開(kāi)或關(guān)閉。在label(程序中,打開(kāi)SoftUpdates的標(biāo)志是文件系統(tǒng)顯示為ufs+s。
之后是選擇安裝介質(zhì)和要裝的Distribution。它提供了幾組常見(jiàn)的情況。Minium安裝最小系統(tǒng),包括一些基本的Unix程序。Developer包括了一些開(kāi)發(fā)工具;X-Developer和Kernel-Developer分別是X和內(nèi)核開(kāi)發(fā)人員用的。此外還有可選的ports,它可以幫助我們來(lái)安裝應(yīng)用程序。
我通常使用的是Custom(定制安裝),不安裝源代碼、ports(因?yàn)檫@些可以從cvsup同步得到最新的,安裝一遍浪費(fèi)時(shí)間),只安裝XFree86(主要是為了運(yùn)行cvsup,因?yàn)榫幾g不需要X的cvsup需要很長(zhǎng)時(shí)間,而且很多其他的東西,如php要用到的gd等等,需要XFree86的庫(kù)文件的支持)、基本系統(tǒng)以及一部分庫(kù)文件。當(dāng)然,您也可以根據(jù)需要選擇安裝其他組件。
完成之后系統(tǒng)就開(kāi)始安裝了。注意,一旦安裝開(kāi)始,所有前面做的分區(qū)、建立文件系統(tǒng)等操作就結(jié)結(jié)實(shí)實(shí)地寫(xiě)到了硬盤(pán)上,再?zèng)]有反悔的機(jī)會(huì)了。如果您的硬盤(pán)上包含重要數(shù)據(jù),那么請(qǐng)?jiān)谶@之前備份。
根據(jù)計(jì)算機(jī)速度的不同,這個(gè)過(guò)程可能持續(xù)10分鐘到數(shù)小時(shí)不等。在此過(guò)程中,除了光盤(pán)或硬盤(pán)出問(wèn)題之外,基本上不會(huì)出現(xiàn)節(jié)外生枝的情況。按Alt+F2可以切換到用于調(diào)試sysinstall(的控制臺(tái),Alt+F4可以切換到一個(gè)命令行控制臺(tái),這些都是調(diào)試FreeBSD安裝過(guò)程,或應(yīng)付緊急情況的,通常用不到。
全部系統(tǒng)文件安裝完成之后,sysinstall(會(huì)給出一個(gè)祝賀畫(huà)面。同時(shí),它也告訴你如何在以后運(yùn)行sysinstall(進(jìn)行其他操作,如配置等等。實(shí)際上,在FreeBSD中sysinstall(基本上相當(dāng)于Windows控制面板的作用。
隨后可以根據(jù)自己的情況配置網(wǎng)絡(luò)、設(shè)置時(shí)區(qū)、顯示字體、XWindow等等,并且創(chuàng)建新的用戶(FreeBSD中的內(nèi)建管理員叫做root,但由于它擁有一切特權(quán),因此完全靠它來(lái)做日常工作有時(shí)會(huì)不太方便,筆者自己就曾不慎以root身分刪除了modules,然后戰(zhàn)戰(zhàn)兢兢地重新編譯內(nèi)核)。
FreeBSD安裝盤(pán)上還提供了一些packages。這些packages是預(yù)先遍一號(hào)的應(yīng)用程序。對(duì)于一臺(tái)擁有很好的Internet連接的、速度足夠快的機(jī)器來(lái)說(shuō),并不需要安裝packages(KDE和X除外,編譯它們各需要花上一天一夜的功夫)。這臺(tái)機(jī)器速度還稱不上“足夠快”,所以我安裝了cvsup,它在devel中。
到目前為止,我們已經(jīng)安裝了FreeBSD的基本系統(tǒng)。由于FreeBSD基本系統(tǒng)中包括很多庫(kù)文件,并且,這些庫(kù)文件可能已經(jīng)被發(fā)現(xiàn)存在問(wèn)題,因此現(xiàn)在立刻安裝應(yīng)用程序或服務(wù)(如Apache等等)是不合適的。此后我們將講解FreeBSD的在線升級(jí)(cvsup)、應(yīng)用程序的安裝,以及優(yōu)化。
|
新聞熱點(diǎn)
疑難解答
圖片精選