[FreeBSD Ports & Package & make]

[第一部Ports] [第二部Package][第三部 其它用法][關鍵字介紹][本文顏色表示]

強烈建議,先至“本文顏色表示”清楚本文顏色區分方式

許多人在安裝完了FreeBSD系統之後,並不知道如何安裝軟體,就像是在Windows中不知道如何Install是一樣的意思,本篇的目的就是教各位如何在FreeBSD中安裝自己想用的軟體。

在FreeBSD中安裝軟體共分三大類:

  1. Ports:這是在安裝FreeBSD時,FreeBSD小組先將軟體的路徑與安裝方法整理,提供使用者安裝。

  2. Package:聞名的RedHat有發展出一套RPM,在FreeBSD上就是Package了。

  3. make:顧名思議,拿到軟體的原始碼之後,直接編釋安裝(作者的最愛)

 

第一部 Ports

只要在安裝FreeBSD時,有順手將下面這個勾起來,就可以使用Ports這個方便的安裝功能了!


[ ] ports The FreeBSD Ports collection

Ports 是FreeBSD中最簡單的軟體安裝方式,在您的FreeBSD安裝完後,在/usr/ports中發現如下的目錄:

www# pwd
/usr/ports
www# ls
.cvsignore biology ftp mbone textproc
INDEX cad games misc ukrainian
LEGAL chinese german net vietnamese
Makefile comms graphics news www
Mk converters hebrew palm x11
README databases irc print x11-clocks
Templates deskutils japanese russian x11-fm
Tools devel java science x11-fonts
archivers distfiles korean security x11-servers
astro editors lang shells x11-toolkits
audio emulators mail sysutils x11-wm
benchmarks french math temp
www#

這裡即是The Ports Collection,我喜歡叫它“軟體集中營”:p

要如何使用呢?

請先試試

www>cd /usr/ports
www>make search key="samba"
Port: samba-2.0.8
Path: /usr/ports/net/samba
Info: A free SMB and CIFS client and server for UNIX
Maint: dwcjr@inethouston.net
Index: net
B-deps:
R-deps:

www>切換目錄至/usr/ports
www>make search key="samba"
軟體名稱: samba-2.0.8
路徑: /usr/ports/net/samba
訊息: A free SMB and CIFS client and server for UNIX
維護者: dwcjr@inethouston.net
類型: net
B-deps:
R-deps:

由以上我們就可以知道,我們如果想要安裝samba的話,只要進入/usr/ports/net/samba這個目錄中就可以了!

好!那接下來我們就進到/usr/ports/net/samba這個目錄裡

www>cd /usr/ports/net/samba
www>pwd
/usr/ports/net/samba
www>ls
Makefile        files           pkg-descr
distinfo pkg-comment pkg-plist

www>make >> Attempting to fetch from ftp://ftp.samba.org/pub/samba/old-versions/.
Receiving samba-2.0.8.tar.gz (3489579 bytes): 9%
3489579 bytes transferred in 71.3 seconds (47.78 kBps)
===> Extracting for samba-2.0.8
>> Checksum OK for samba-2.0.8.tar.gz.
check for ...... . . .

checking configure summary
configure OK . . .
updating cache ./config.cache
creating ./config.status
===> Building for samba-2.0.8
Using FLAGS = -O -pipe -Iinclude -
. Compiling ..... .
www>make install

做完上面的動作,你裝完成了安裝的程序了!夠簡單吧!

第二部 Package
Ports最大的缺點就是訊息無法即時更新,所以如果套件以經有新版的研發出來了,用Ports只能裝研發小組在FreeBSD推出時所有的最新套件,也就是你可能無法使用最新的套件,不過這當然不是沒有辦法處理的,Package就是因應這件事出來的。

 

Package是一套將以經整理好的軟體安裝進FreeBSD的系統裡的軟體,主要下列功能:

pkg_add
安裝一個pkg套件
pkg_create 創造一個pkg套件
pkg_info 查詢一個pkg套件資料
pkg_update 升級一個pkg套件
pkg_check 檢查一個pkg套件的加密簽章(cryptographic signature)
pkg_delete 刪除一個pkg套件
pkg_sign 插入加密簽章(cryptographic signature)至一個pkg套件
pkg_version 創造一個pkg套件

今天我們只針對pkg_add及pkg_delete、pkg_info做介紹!

Package- pkg_add

www>pkg_add samba-2.0.10.tgz

If you want to use samba ports,
1. Copy /usr/local/etc/smb.conf.default to /usr/local/etc/smb.conf, and edit
it.
2. Copy /usr/local/etc/rc.d/samba.sh.sample to /usr/local/etc/rc.d/samba.sh
3. Type /usr/local/etc/rc.d/samba.sh or reboot.

See document files in /usr/local/share/doc/samba and example config files in
/usr/local/share/examples/samba for details.

FreeBSD Samba ports for localization and encrypt passwords support are no
longer provided because these supports have been integrated into the
original distribution since 1.9.18. If you're Western European or Japanese
Windows users, please set "client code page" parameter in smb.conf (1.9.18
does not support Chinese Windows. If you want to use Chinese samba, please
use chinese/samba port). See smb.conf.sample for details. If you want to
use NT4+SP3 or Win95+updates clients, set "encrypt passwords" parameter to
yes and use smbpasswd [username] to use /usr/local/private/smbpasswd for
authentication.

你可以說我不負責任,不過我以經講完了怎麼用pkg_add了!

是的,沒有錯,你只要輕輕鬆鬆的打入pkg_add在加上你要安裝的package就可以了!

Package- pkg_delete
www>pkg_delete samba-2.0.10

好吧,我承認我真的很不負責任,因為我連怎麼用pkg_delete都講完了。

 

Package
上面是真的就講完了,因為在FreeBSD下安裝Package實在是非常簡單的事情,大部份的時候連Linux一族用的RPM所要注意的“相依性”在FreeBSD中也非常少會遇到,所以在FreeBSD利用package安裝軟體/移除軟體,實在是件非常方便又簡單的事!
第三部 其它用法

1. 我要怎麼找出我的ports裡有什麼軟體可供安裝呢?

這簡單,只要到/usr/ports執行make search key="軟體的關鍵字"
那系統就會告訴你,有那幾個程式符合你的需求,分別放在什麼地方囉!

2. 我要怎麼知道我有裝了什麼pkg?

執行pkg_info就行囉!
當然也可以配合grep搜尋想要搜尋的port。

第三部Make待續

 

其它說明

關鍵字介紹
make search key="<keyword>"

這是在Ports Collection中使用的搜尋功能,在Ports中的各式應用軟體有上百種,我們如何在最短的時間找到我們需要的軟體放置在什麼位置呢?

其實很簡單,只要利用這個指令,就可以利用關鍵字找到囉!

特別注意
make search key="keyword"中,key與keyword中等的等號是沒有空格的。
make 將原始碼編譯(Compile)成二進位可執行檔案的工具,其中依原始碼不同可能需要cc、gcc等編譯軟體(compiler)輔助。
RPM 在Linux的套件安裝程序。
Ports 在FreeBSD中,經過彙整之後的軟體集中營,功能類似RPM。
Packages 在FreeBSD中的套件安裝程序,功能類似RPM。
若於本文中還有看到不清楚的關鍵字時,請來信給梁楓,謝謝。
本文顏色說明
文字 這只是一般的述訴句
文字 需要特別注意的句字
 
表示在終端機中看到的模樣
文字
表示不必注意的部份。
文字
由使用者輸入的命令或文字
文字
畫面上電腦所輸出的資訊

-- PowerBy 梁楓 --