感覺freebsd的分支比較復雜,在網上找了很多資料,問了不少的人,說一下我總結的結果。
freebsd現在(2008.7)有三個分支,分別是current、stable、release,
這三個分支只是指freebsd的基本系統和內核,
ports並不具體細分為哪一個分支,所有的分支都可以使用最新的ports,但是你也別用4.x版本freebsd來的嘗試安裝最新的ports,
可以使用cvsup獲得任意分支的freebsd的系統源代碼編譯後使自己的系統升級或者是降級到某一個分支和某一個分支的某一個版本,理論上說是這樣,但是你不要嘗試著干從4.x升到7.0這樣的事情,
分支的概念只適合於你的基本系統:kernel+userland,並不適用於ports,就是說你可以使用5.x 6.x 7.0的release或者是stable、current來安裝同一個版本的ports,但是最好也不要差的太遠了,
freebsd系統升級的方法主要有兩個:
1.cvsup升級源代碼,然後重新編譯。適用於release、stable、current,詳細內容在handbook上有介紹,雖然只介紹了current和stable,但是cvsup也可以用於release。
2.freebsd-update工具,直接以二進制的方式升級基本系統,只適合於release,不適合於current和stable,並且需要有關維護人員做好相關的升級文件,才能使用freebsd-update,可能會比使用cvsup慢一點,但是很方便,我現在就是用這個,升級以後重現編譯內核,然後使用uname -a會發現輸出結果有變化。
release還可以使用最新的安裝光盤來升級,這個貌似不太實用,因為要把整個光盤鏡像下載下來,然後還要刻盤。
這三個分支的特點如下:
1.current:current是項目開發的最前沿,所有新的功能以及特性都要先到這裡來,這些新功能可能會被保留,也可能會被刪除,總之這裡是開發的最前沿,沒有很高的水平不要亂弄。
2.stable:新功能和新特性在current裡面經過一段時間測試以後,還需要進一步測試,進一步測試救災stable裡面進行,所以這個stable並不是穩定運行的意思,只是說功能上相對穩定,還需要進一布測試,經過長時間的測試就會形成release。
3.frelease:這個是freebsd最終給用戶使用的分支,已經是經過長時間測試的,比較有保障,推薦一般用戶使用,會有相關的安全維護,這些安全更新可以使用freebsd-update添加到系統當中去。
所以對於多數人來說,應該跟蹤release,然後使用freebsd-update來升級自己的release,當然你也可以使用cvsup來升級自己的release,區別在於freebsd-update要稍微慢一點,因為需要開發人員做好升級的文件。
如果你想為freebsd做一些貢獻,那麼就跟蹤stable,這樣可以匯報一些bug,但是這樣你只能使用cvsup,
如果你很自信又想為freebsd的開發多出點力,那就跟蹤current,同樣只能使用cvsup,
current不能保證編譯整個系統時一定成功,stable要好一些。
如果理解不對的話,歡迎指點一下啊。