小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Freebsd port 用法

 tcwl123 2010-12-08


 

什么是 Ports 系統(tǒng)

簡單的講,一個 port 就是一個被移植到了 FreeBSD 上的軟件。所有這些軟件的集合,加上 FreeBSD 處理這些軟件的各種工具,就是 Ports 系統(tǒng)。

Ports 系統(tǒng)有什么用

每一個被移植到 FreeBSD 上的軟件(就是 Port),都能通過 Ports 系統(tǒng)中的工具方便有序的安裝,升級,卸載。而且符合 FreeBSD 系統(tǒng)對應(yīng)用軟件施加的各種規(guī)范。免去了你到處尋找軟件,自己編譯,安裝,升級的麻煩。借助這些 ports 維護者的努力,你也不用擔(dān)心這些軟件與系統(tǒng)不兼容導(dǎo)致無法安裝升級等等。

怎么安裝 Ports 系統(tǒng)

介紹三種方法來安裝 Ports 系統(tǒng):

1 安裝系統(tǒng)時選擇安裝 Ports 系統(tǒng)

這是最簡單的方法,但是也有缺點。因為 Ports 系統(tǒng)總是隨時更新的。因此你從安裝光盤上安裝的 Ports 系統(tǒng)肯定不是最新的了。

2 使用 portsnap 安裝/同步 ports 系統(tǒng)

這是推薦的方法。使用portsnap不需要事先安裝 ports tree,并且能夠在任何時候恢復(fù)到已知的最新狀態(tài)(即使手工對ports tree進行了修改)。

使用 portsnap 分成兩個步驟:下載壓縮的 portsnap 快照,和更新現(xiàn)有系統(tǒng)。下載或更新 portsnap 快照的方法是 portsnap fetch;首次安裝,或希望將 ports tree 恢復(fù)到快照的樣子,應(yīng)使用 portsnap extract;之后更新系統(tǒng)中的 ports tree,則可以通過 portsnap update 來完成。對于服務(wù)器而言,推薦在 crontab 中增加在每天3點執(zhí)行 portsnap cron,以減少使用時所需要的下載時間。

首次下載 portsnap 快照時,需要下載一個大約50MB的快照基礎(chǔ)文件。在中國大陸,由于網(wǎng)絡(luò)狀況的原因,這可能需要較長時間??梢钥紤]用 portsnap fetch -s portsnap.cn.freebsd.org 做首次下載;之后的下載,還是推薦使用正常的 portsnap fetch。

可以使用下面步驟完成上述情況

1.首先設(shè)置一個比較快的portsnap服務(wù)器,如果系統(tǒng)默認(rèn)的地址你的訪問速度也很快,可以不修改

#vi /etc/portsnap.conf

設(shè)置SERVERNAME=portsnap.cn.freebsd.org ,你可以設(shè)置相對你速度快點的服務(wù)器的地址

2.執(zhí)行下面命令

#portsnap fetch extract 這里直接下載ports并且解壓

這樣就完成了下載ports系統(tǒng)以及解壓到/usr下面了

3.設(shè)置最快的ports鏡像

用ports安裝軟件的時候,如果沒有設(shè)置相對于你來說最快的ports服務(wù)器地址,那就會默認(rèn)的

ftp://ftp.freebsd.org/pub/FreeBSD/ports/distfiles/

,這個地址對于很多地方來說是很慢的。

修改 /etc/make.conf 加入以下代碼

MASTER_SITE_OVERRIDE=\

ftp://ftp.freebsdchina.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}\

ftp://ftp.tw.freebsd.org/pub/FreeBSD/ports/distfiles/${DIST_SUBDIR}

如果你有最快的地址,可以加到上面去,下載就會快了 。

3 使用 csup/cvsup 安裝/同步 Ports 系統(tǒng)

這種方法已經(jīng)不再推薦使用。

不管事先你有沒有安裝 Ports 系統(tǒng),你都可以使用 csup/cvsup (推薦使用 csup,這是基本系統(tǒng)中自己帶的)來安裝/同步最新的 Ports 系統(tǒng)。把 /usr/share/examples/cvsup/ports-supfile 拷貝到一個地方(比如 /home/user/tmp/ports-supfile),然后作適當(dāng)?shù)男薷模ū热缧薷囊B接的服務(wù)器)。最后使用如下命令來安裝/同步:

csup -L 2 /home/user/tmp/ports-supfile

Ports 樹的目錄結(jié)構(gòu)

假設(shè)你的 ports 樹安裝在默認(rèn)位置 /usr/ports。

文件:

/usr/ports/CHANGES # ports 開發(fā)者、維護者等的記錄文檔。

/usr/ports/COPYRIGHT # ports 樹的版權(quán)。

/usr/ports/GIDs # 一些 port 可能用到的組名稱。

/usr/ports/INDEX-xxx # 每個 port 的摘要

/usr/ports/KNOBS # 編譯 port 時需要的一些環(huán)境變量與解釋。

/usr/ports/LEGAL # 某些 port 的協(xié)議限制。

/usr/ports/MOVED # 被移動/刪除了的 port 列表。

/usr/ports/Makefile # ports 樹總的 BSD Makefile。

/usr/ports/README

/usr/ports/UIDs # 一些 port 可能用到的用戶名稱。

/usr/ports/UPDATING # ports 樹的更新記錄以及建議。

目錄:

/usr/ports/Mk # 編譯 port 需要的 Makefile 集合。

/usr/ports/Templates # 一些模板。

/usr/ports/Tools # 一些工具。

除開以上文件和目錄,其他所有的目錄都是 ports。一個 port 的目錄結(jié)構(gòu):

/usr/ports/分類/名稱

比如 firefox 被分類在 www。因此 firefox 在 ports 樹中的位置就是:

/usr/ports/www/firefox

使用 Ports 系統(tǒng)

1 查詢

比如,你想知道 ports 中是否有 pidgin 這個軟件,那么可以這樣:

$cd /usr/ports

$make search key=pidgin

同樣也可以使用

$cd /usr/ports

$make search name=pidgin

/usr/ports/README 中還有更多的例子可以參考。

2 安裝

非常簡單。比如你要安裝 firefox,那么作為超級用戶 root:

#cd /usr/ports/www/firefox

#make install clean

3 卸載

要卸載 firefox 的話:

#cd /usr/ports/www/firefox

#make deinstall clean

4 升級

要升級 firefox:

#cd /usr/ports/www/firefox

#make deinstall reinstall clean

定制 Ports 系統(tǒng)

1 自己設(shè)定 Ports 樹的位置

當(dāng)你把 Ports 樹放在非默認(rèn)位置(/usr/ports)的時候,就需要修改一些環(huán)境變量讓 Ports 中的工具知道你的修改。這個變量就是 PORTSDIR。比如,你把 Ports 樹放在了 /opt/ports,那么 在 sh/bash 中,執(zhí)行如下命令:

export PORTSDIR=/opt/ports

在 csh 中,你需要執(zhí)行如下命令:

setenv PORTSDIR /opt/ports

妥貼的辦法是把這個環(huán)境變量放到超級用戶 root 的 dot.cshrc 文件(/root/.cshrc)里面。又或者你想讓普通用戶也能用到這個環(huán)境變量,可以考慮放到 /etc/profile 或者 /etc/csh.cshrc 里面。

注意!如果你使用 portsnap 命令來同步 Ports 樹,而你的 Ports 樹不在默認(rèn)位置,請在 /etc/portsnap.conf 中也設(shè)定你的 Ports 樹的位置。

注意!如果你使用 csup/cvsup 同步 Ports 樹,而你的 Ports 樹不在默認(rèn)位置,請在你的 ports-supfile 中也設(shè)定你的 Ports 樹的位置。

2 自己設(shè)定 dist 文件的位置

所謂 dist 文件,就是 port 的源碼。一般情況下,這些源碼都是用 tar 打包然后用 bzip2 壓縮的。默認(rèn)的位置是在 $PORTSDIR/distfiles。但是,你也可以把這些 dist 文件放到另外的地方。需要設(shè)定的環(huán)境變量就是 DISTDIR。你可以根據(jù)上面的例子來設(shè)定這個環(huán)境變量。

常用的 Ports 管理工具

portsnap

這是推薦的升級 Ports 系統(tǒng)樹的工具。

portupgrade

相當(dāng)好用的升級 Ports 中軟件的 Ruby 工具。支持從源碼/包升級。

pkg 工具

FreeBSD 基本系統(tǒng)中自帶的包管理工具。方便實用。都是 pkg_* 類型的系統(tǒng)命令,比如 pkg_add, pkg_delete 之類的

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多