中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

FreeBSD Web服務(wù)器優(yōu)化

1970-01-01    來源:

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

  完成了安裝、配置,F(xiàn)reeBSD基本上就算裝完了。不過,目前為止沒有哪個通用操作系統(tǒng)能夠保證“bug-free”,F(xiàn)reeBSD也一樣。在重新啟動之后,我們需要做一些調(diào)整;并且,通過重新配置內(nèi)核,我們可以得到一個更小、更快的操作系統(tǒng)。

  第一步要做的是同步源代碼。FreeBSD是一套開放源代碼的操作系統(tǒng),它的全部源代碼都可以通過cvsup與中央cvsup服務(wù)器,或它的某個鏡像同步。

  cvsup是一個可選的package,同樣的,它也可以從ports里面安裝(/usr/ports/devel/cvsup和/usr/ports/devel/cvsup-nogui)?紤]到許多應(yīng)用程序都依賴X的庫文件,在前面安裝的部分我安裝了它,并且直接安裝了cvsup的package。

  不過,如果你有足夠的耐心去一個一個地make需要的ports,那么先安裝ports collection,然后make cvsup-nogui也是一個不錯的主意,盡管這需要比較長的時間。

  創(chuàng)建一個用于cvsup(1)的supfile,命名為stable-supfile:

*default host=ftp.bjpu.edu.cn

*default base=/usr

*default prefix=/usr

*default release=cvs tag=RELENG_4

*default delete use-rel-suffix

src-all

ports-all tag=.

  隨后執(zhí)行

cvsup -g -L 2 stable-supfile

  這里需要稍微解釋一下FreeBSD的幾種版本。

  FreeBSD包括3類分支:-RELEASE,-STABLE和-CURRENT。FreeBSD 3.x、4.x和5.0是目前受到維護(hù)的版本,如果你期待穩(wěn)定運行,那么,可以選擇的最新版本將是FreeBSD 4.6-STABLE(如果你是在4.6.2-RELEASE發(fā)行之后更新的,那么它實際上比4.6.2-RELEASE新,并且,它正式的CVS tag是RELENG_4,即FreeBSD 4-STABLE)。

  那么,三類分支有什么區(qū)別呢?

  FreeBSD的開發(fā)是非常活躍的。系統(tǒng)中可能會隨時引入一些新的特性。最新的代碼是在-CURRENT分支中引入的。-CURRENT的修改非常頻繁,每天都可能有數(shù)百處修改。

  使用-CURRENT分支的FreeBSD需要耐心和勇氣,因為你的系統(tǒng)隨時可能崩潰(隨著FreeBSD 5.0開發(fā)尾聲的接近,這種現(xiàn)象已經(jīng)越來越少),make world也可能空手而歸(沒有人保證-CURRENT分支能夠正常編譯),此外,這個分支的性能也不好(因為調(diào)試的原因,這個分支引入了大量的調(diào)試選項,這意味著運行速度不會太快)。

  當(dāng)然,正像它的名字那樣,-CURRENT分支的版本也是最新的5.0,而且,一切FreeBSD的錯誤和漏洞的修正都是首先在-CURRENT分支引入的。

  目前,-CURRENT分支碩果僅存的只有FreeBSD 5-CURRENT(指定cvs tag時寫“.”),這個分支包括了FreeBSD 5.0開發(fā)的最新進(jìn)展。

  目前,F(xiàn)reeBSD有很多RELEASE版本,它們的cvs tag如下。我個人建議使用最新的4.6.2-RELEASE。

  對于多數(shù)人來說,-RELEASE是一個比較極端的選擇。無論何時出現(xiàn)版本升級,如果你想跟進(jìn),那都必須修改supfile,如果你選擇不跟進(jìn),那么就可能造成ports工作異常。如果經(jīng)常更新,-RELEASE可以保證操作系統(tǒng)本身的安全性,但同其他分支一樣,如果ports出了問題,那么也得一塊make,而既然這樣,還不如使用-STABLE。

  如果你符合下面的條件,那么RELEASE分支可能比-STABLE分支更適合你

  你使用的軟件對于操作系統(tǒng)的變化非常敏感,比如,它只能FreeBSD 4.5,而無法在4.6上運行;同時,你不打算采用它的更新版本,或者它的作者拒絕更新

  操作系統(tǒng)的更新對于你來說沒有任何意義,比如,你打算把FreeBSD當(dāng)作一個相對固定的嵌入式操作系統(tǒng)來使用,例如,作為防火墻的一部分

  更新會對你造成困擾,操作系統(tǒng)的絕大多數(shù)新特性對于你來說除了增加煩惱之外,不能帶來任何其他東西。

  一旦同步完源代碼,就應(yīng)該對整個系統(tǒng)進(jìn)行更新。如果你沒有每天察看安全公告的習(xí)慣,那就應(yīng)該關(guān)心一下cvsup到底更新了哪些代碼。nectar是目前FreeBSD的Security Officer。如果你發(fā)現(xiàn)他一下子更新了許多代碼,那么對你來說立即make world和kernel很可能是必需的。為了更新整個系統(tǒng),在/usr/src中執(zhí)行:

make world

  以及

make kernel KERNCONF=內(nèi)核配置文件名

  當(dāng)然,也可以連起來執(zhí)行:

make world kernel KERNCONF=內(nèi)核配置文件名

  如果你的計算機(jī)運行速度較慢,那么,對于基本系統(tǒng)的更新(相當(dāng)于不包括庫的一次world),可以用

make most

  替代make world,但make world是一個不錯的主意,因為它能夠保證對C運行環(huán)境的改變應(yīng)用到所有的程序中,如果修正的不是動態(tài)連接的C函數(shù)庫,那么make world可以保證代碼的一致性。

  make kernel是一個需要重新啟動的操作。如果你的make world修改了系統(tǒng)的關(guān)鍵服務(wù),那么最好也重新啟動一下。我很少有耐心看完make world和kernel的執(zhí)行,根據(jù)系統(tǒng)的運行速度不同,這需要一個小時到一天的時間,而且,不是所有的SSH客戶端都能夠長時間正確的執(zhí)行,例如,SecureCRT的多個版本都有內(nèi)存泄漏問題。

  為了解決這個問題,我用下面的命令來完成更新:

make world kernel KERNCONF=內(nèi)核配置文件名

clean > /var/log/world,

out && reboot &

  這個命令能夠記錄更新的全過程,如果在什么地方編譯失敗,你可以很快地找到原因。對于多數(shù)人來說,由于后面的&&,只需要察看uptime就能知道便以是否成功。

  需要說明的是,F(xiàn)reeBSD的make world并不總能成功。有時需要修改一些環(huán)境變量才能成功完成make。為了保證make成功,在/usr/src中執(zhí)行任何make操作之前,建議你看一眼UPDATING中是否有特殊的要求(這種要求并不是在FreeBSD Release的時候才會出現(xiàn),很多時候他會在某個CURRENT中引入,然后隨著MFC進(jìn)入-STABLE分支),并且,在進(jìn)行大的版本升級之前(跨RELEASE,甚至主版本號),首先執(zhí)行下面的命令:

mergemaster -p

  并在make world之后執(zhí)行

mergemaster -i

  運行mergemaster腳本需要一定的Unix配置知識,不過,由于配置文件中包含很多幫助信息,因此,只要master.passwd、group這樣的文件不出大問題(如果cvsup更新了master.passwd,那么就需要留神,因為master.passwd標(biāo)準(zhǔn)配置是root口令為空,這時需要用m來合并,而不是使用i安裝),mergemaster并不會引入什么新的問題。

  前一條命令是更新make的配置(/etc/defaults/make.conf和/etc/make.conf)。對于多數(shù)人來說,除非進(jìn)行跨版本升級,否則一般情況下是不需要這樣做的。后一條命令是同步全部配置,并安裝以前不存在的配置文件,而不進(jìn)行提示。

  筆者曾經(jīng)遇到過FreeBSD因為系統(tǒng)日期不正確而無法make的情況,因此,再次特別提醒大家,如果你的系統(tǒng)日期不正確,最好是用date命令修改一下,或者干脆用ntpdate或ntpd來同步時間。

標(biāo)簽: 安全 標(biāo)準(zhǔn) 代碼 防火墻 服務(wù)器 腳本 漏洞 問題 選擇

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:apache最大連接數(shù)怎么設(shè)置

下一篇:怎樣設(shè)置讓Apache不顯示版本號