FreeBSD - 使用埠的主要和次要升級?
第一次升級我的 FreeBSD 時(從 10.0 –> 10.1),我對不同的可能性感到困惑。
據我了解,
freebsd-update
是否像 FreeBSD 一樣進行二進制更新pkg
。初始安裝後,我使用埠來安裝、編譯和更新我的系統,我基本上想知道,如果我不能為小升級做同樣的事情。我知道,有一個源獲取和編譯選項,但在我看來,(某些)安全更新依賴於保持 SVN 儲存庫同步。a) 正常程序升級和次要係統升級有什麼區別?
b) 我可以使用原始碼分發並通過埠包管理對其進行更新(無需 SVN 簽出)嗎?
來自#freebsd @freenode 的更新
RobotsOnDrugs:freebsd-update 和 base svn repos 用於基礎,而 ports tree 和 pkg 用於第三方軟體
freebsd-update
和做非常不同的pkg upgrade
事情。將
freebsd-update
(二進制)更新您的基本系統。基本系統包含以下所有內容/usr/local
:檢查/{,s}bin
和/usr/{,s}bin
基本系統附帶的程序。基本系統的部分不出現在包數據庫中,它是一個獨立的基礎設施。由 FreeBSD 開發的整個基礎系統。做不同的
pkg upgrade
事情:它升級包。軟體包位於 中/usr/local
,它們是“3th-party-apps” - 由其他人/公司/…開發,而不是 FreeBSD。a) 系統升級是指升級基礎系統(
freebsd-upgrade
)。程序更新意味著升級已安裝的軟體包(在/usr/local
、帶有pkg upgrade
或帶有埠樹)。b)您可以使用您的選項(“基於源”)從埠建構您的包,或者您可以使用來自儲存庫的包(“基於二進制”)。它獨立於基礎系統:您可以使用
freebsd-update
(“二進制更新”)更新您的基礎系統,並且您可以從原始碼建構您的基礎系統。如果你想從埠建構包,你應該有埠樹。您可以使用portsnap結帳。
我希望現在很清楚。
Update1如果你想從原始碼建構基礎系統,你應該重建每個更新 - 請參閱Rebuilding World。當然應該同步源。
我認為如果你想要一個基於原始碼的系統,那麼使用二進制基礎系統(它也包含一個編譯器(10.x 中的 clang))並建構你想要的應用程序(網路伺服器、最喜歡的編輯器,也許是視窗管理器、瀏覽器、辦公套件等)從港口。