軟件安裝
安裝了 FreeBSD 後,您一定還會需要安裝其它非 FreeBSD 內附的軟件。在 FreeBSD 上安裝軟件有許多種方法,我們將一一為各位介紹。
概論
傳統上,要在一個 UNIX 系統上安裝其它軟件時,有幾個步驟:
下載該軟件,有可能是 binary 檔或是原始碼。
解壓縮該檔案,通常是以 tar 或 gzip 壓縮的。
讀一下該目錄中的說明文件,可能是 readme 或是 doc/ 的文件,來了解如何安裝該軟件。
如果所下載的是原始碼,可能要先編輯一下 Makefile 或是執行 configure,接著再編譯該軟件。
最後再測試與安裝。
當然,我們可以在 FreeBSD 上使用傳統的方式來安裝軟件,但是還有更簡單的選擇。FreeBSD提供了 package 和 ports 這二種簡單的安裝軟件方式。
所謂的 pakcage 是別人幫你將程序編譯成 binary 文件,並定義了該安裝在什麼地方。我們只要下載一個壓縮檔,並使用 pkg_add 這個指令就可以快速的將軟件安裝在 FreeBSD 上。這是安裝軟件最簡單的步驟,所安裝的東西也是最標准的,和自己依需求修改並編譯原始碼比較起來較缺乏彈性。
而 port 就是使用原始碼來安裝軟件。我們只要進入 /usr/ports/ 裡想要安裝的軟件目錄中,打指令 make install 就可以完成安裝了。FreeBSD 己經幫我們定義了安裝該軟件所須的步驟、所要求的其它套件。不管是 package 或是 ports,當安裝的軟件需要依靠其它軟件才能繼續安裝時,它們會自動幫你安裝該軟件。所有安裝好的軟件都將記錄在 /var/db/pkg 中,日後如果我們想要移除軟件時,可以用一個簡單的指令 pkg_delete 加上軟件名稱就可以了。
即然 port 這麼好用,為什麼 FreeBSD 要同時有 package 和 ports 呢?我們來比較一下 ports 和 package 的優點:
package 的優點:
一個己經編譯過的壓縮檔通常比包含原始碼的檔案還要小。
使用 pakcage 並不需要再做任何的編譯動作,如果你的計算機速度很慢,在安裝像 KDE、GNOME 等大型軟件時,不用編譯可以省下很多時間。
使用 package 來安裝軟件時,你不必事先了解在 FreeBSD 上編譯時所使用的軟件及其過程。
ports 的優點:
package 為了要在多數的計算機執行,考慮兼容性問題,通常編譯的比較保守。而使用 ports 你可以依自己的系統修改,例如選擇使用 Pentium III 或是 Athlon 的處理器。
在編譯 package 時,就已經限制了該軟件的功能,無法再依自己需求擴充。例如 Apache 這套軟件就有許多的功能可以在編譯時掛進來,使用 ports 來安裝時,你可以依自己的需求來加以修改。
我們可以經由更新 Port Tree 來使用較新的軟件,而 package 通常只和系統一起 release。
有些軟件不允許使用 binary 文件的方式散播,只能下載原始碼。
有了原始碼,你可以自己修改並加以應用。
有的人喜歡擁有原始碼,他們可以讀它、從中學習。
接著我們就針對 package 及 ports 來說明它們的使用方式。