久久精品水蜜桃av综合天堂,久久精品丝袜高跟鞋,精品国产肉丝袜久久,国产一区二区三区色噜噜,黑人video粗暴亚裔

FreeBSD安裝Packages

2024-10-28 136

FreeBSD提供了兩種補充技術(shù),用以在系統(tǒng)中安裝第三方軟件: FreeBSD Ports 套件 (用于從源代碼安裝), 以及packages (用以從預(yù)編譯的二進(jìn)制版本安裝)。這兩種方法都可以從本地介質(zhì)或網(wǎng)絡(luò)直接安裝所需的應(yīng)用程序的最新版本。本教程主要介紹如何安裝Packages應(yīng)用程序。

一、軟件安裝預(yù)覽

如果以前使用過 UNIX? 系統(tǒng),典型的第三方軟件安裝步驟如下:

1、下載軟件,發(fā)行版可能是源代碼格式或二進(jìn)制包。

2、解壓軟件(常用工具有 “compress”、”gzip” 或 “bzip2″)。

3、閱讀相關(guān)文檔,了解安裝步驟(通常文件名為 “INSTALL” 或 “README”,或者在 “doc/” 目錄下)。

4、如果軟件是源代碼形式發(fā)布,則需要編譯它,可能需要編輯 “Makefile” 文件或運行 “configure” 腳本等。

5、測試并安裝軟件。

如果一切順利,這個過程就這么簡單。不過在安裝某些軟件包時,可能會遇到錯誤,需要對其代碼進(jìn)行編輯以確保其正常工作。

二、Packages介紹

Packages是可以下載的 FreeBSD package 文件,包含編譯好的副本、配置文件或文檔??梢允褂?FreeBSD 的包管理命令(如 “pkg_add(1)”、”pkg_delete(1)”、”pkg_info(1)”)來操作下載的包,通過簡單命令即可安裝新應(yīng)用。

請注意,packages 和 ports 是相輔相成的。例如如果要安裝一個依賴特定庫的應(yīng)用程序,系統(tǒng)會自動檢查并安裝相關(guān)庫。

ports詳情可參考:《FreeBSD安裝Ports套件

Package的優(yōu)點:

  • 一個壓縮的 package 通常比源代碼的應(yīng)用程序小得多;
  • package 不需要額外的編譯,尤其對于大型應(yīng)用(如 Mozilla、KDE 或 GNOME),在系統(tǒng)資源有限的情況下尤為重要;
  • package 不需要了解在 FreeBSD 上編譯軟件的詳細(xì)過程。

在安裝任何應(yīng)用程序之前,建議檢查 FreeBSD 的安全問題報告(http://vuxml.freebsd.org/),確保安裝的軟件沒有已知漏洞。還可以安裝 “ports-mgmt/portaudit”,自動檢查已安裝應(yīng)用程序的漏洞,或使用 “portaudit -F -a” 命令在安裝軟件后進(jìn)行檢查。

三、確定應(yīng)用程序

在安裝應(yīng)用程序之前,需要知道所需程序的名稱。FreeBSD 中可用的應(yīng)用程序不斷增加,幸運的是,有多種方法可以幫助找到所需的程序:

  • 訪問 FreeBSD官方網(wǎng)站搜索當(dāng)前所有可用應(yīng)用程序的列表,可以按程序名稱或分類進(jìn)行搜索;
  • Dan Langille 維護(hù)的FreshPorts(http://www.FreshPorts.org/) 網(wǎng)站會跟蹤 ports 中的應(yīng)用程序變化,并在程序升級時發(fā)送郵件提醒;
  • 如果不確定應(yīng)用程序的名字,可以通過 [Freshmeat](http://www.freshmeat.net/) 查找,找到后可回到 FreeBSD 主站確認(rèn)該應(yīng)用程序是否已被 port。

如果知道一個 port 的準(zhǔn)確名稱但想知道其類別,可以使用 “whereis(1)” 命令。輸入 “whereis file”(其中 file 是想安裝的程序名)可查看該程序的位置。

例如:

# whereis lsof
lsof: /usr/ports/sysutils/lsof

該結(jié)果顯示 “lsof”(一個系統(tǒng)配置程序)位于 “/usr/ports/sysutils/lsof”。

還可以使用 “echo(1)” 命令來查找某個 port 是否存在于 ports 樹中。例如:

# echo /usr/ports/*/*lsof*
/usr/ports/sysutils/lsof

請注意,這條命令將返回所有符合條件的文件,包括下載到 “/usr/ports/distfiles” 目錄中的文件。

另一個查找 port 的方法是使用 ports collection 內(nèi)嵌的搜索機制。進(jìn)入 “/usr/ports” 目錄,運行以下命令:

# cd /usr/ports
# make search name=program-name

將 “program-name” 替換為想尋找的程序名稱。例如,如果要找 “lsof”:

# make search name=lsof

輸出中包含 “Path:” 的行將告訴該 port 的具體位置。盡管其他信息不是必須的,但了解軟件的維護(hù)者和依賴關(guān)系也很有幫助。

此外還可以使用 “make search key=string”,其中 “string” 是想搜索的部分內(nèi)容。這將搜索 port 的名稱、注釋、描述和從屬關(guān)系,幫助找到所需的程序。

以上搜索方式不區(qū)分大小寫,搜索 “LSOF” 和 “lsof” 的結(jié)果是一樣的。

四、使用Package系統(tǒng)

在 FreeBSD 系統(tǒng)上,有多種工具可用于管理軟件包。”sysinstall” 工具可以在運行中的系統(tǒng)上執(zhí)行安裝、刪除以及列出可用和已安裝的預(yù)編譯軟件包。

1、安裝軟件包

可以使用 “pkg_add(1)” 命令從本地文件或網(wǎng)絡(luò)服務(wù)器安裝 FreeBSD 軟件包。

示例 1:從本地手動下載并安裝軟件包

# ftp -a ftp2.FreeBSD.org
Connected to ftp2.FreeBSD.org.
220 ftp2.FreeBSD.org FTP server (Version 6.00LS) ready.
331 Guest login ok, send your email address as password.
230 Guest login ok, access restrictions apply.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd /pub/FreeBSD/ports/packages/sysutils/
250 CWD command successful.
ftp> get lsof-4.56.4.tgz
local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
200 PORT command successful.
150 Opening BINARY mode data connection for 'lsof-4.56.4.tgz' (92375 bytes).
100% || 92375 00:00 ETA
226 Transfer complete.
ftp> exit
# pkg_add lsof-4.56.4.tgz

如果沒有本地軟件包安裝盤(如 FreeBSD CD-ROM),可以使用 “pkg_add(1)” 命令并加上 “-r” 選項。這將強制程序自動識別目標(biāo)文件的格式和版本,并從一個 FTP 站點尋找并安裝軟件包。

# pkg_add -r lsof

上述示例將下載最新的軟件包,而無需用戶干預(yù)。如果希望指定 FreeBSD 軟件包的鏡像站點,可以通過設(shè)置 “PACKAGESITE” 環(huán)境變量來覆蓋默認(rèn)設(shè)置。”pkg_add(1)” 使用 “fetch(3)” 下載文件,可以通過多種環(huán)境變量配置,包括 “FTP_PASSIVE_MODE”、”FTP_PROXY” 和 “FTP_PASSWORD”。如果使用 FTP/HTTP 代理或位于防火墻后面,可能需要設(shè)置這些環(huán)境變量。有關(guān)詳細(xì)列表,請參考 “fetch(3)”。

使用 “pkg_add(1)” 時,軟件名不需要包含版本號,程序會自動找到最新版本。

如果使用 FreeBSD-CURRENT 或 FreeBSD-STABLE 版本,”pkg_add(1)” 將下載最新的應(yīng)用軟件。如果使用 -RELEASE 版本的 FreeBSD,程序?qū)@取與版本相應(yīng)的軟件包版本??梢酝ㄟ^修改環(huán)境變量 “PACKAGESITE” 來改變這一行為。

例如如果運行 FreeBSD 8.1-RELEASE 系統(tǒng),默認(rèn)情況下 “pkg_add(1)” 將嘗試從 “ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.1-release/Latest/” 下載預(yù)編譯的軟件包。如果希望強制 “pkg_add(1)” 下載 FreeBSD 8-STABLE 的軟件包,可以將 “PACKAGESITE” 設(shè)置為”ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8-stable/Latest/”。

軟件包使用 “.tgz” 和 “.tbz” 兩種格式??梢栽?“ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/” 或從 FreeBSD 的發(fā)行光盤的 “/packages” 目錄中找到這些軟件包。軟件包的設(shè)計與 “/usr/ports” 樹一致,每個分類都有自己的目錄,所有軟件包可以在 “All” 目錄中找到。

軟件包系統(tǒng)的目錄結(jié)構(gòu)與 ports 的設(shè)計一致,它們共同構(gòu)成了整個 package/port 系統(tǒng)。

2、軟件包管理

“pkg_info(1)” 是用于列出已安裝的所有軟件包及其描述的工具。

# pkg_info
cvsup-16.1 A general network file distribution system optimized for CV
docbook-1.2 Meta-port for the different versions of the DocBook DTD
...

“pkg_version(1)” 是一個統(tǒng)計所有已安裝軟件包版本的工具。它可以比較本地軟件包的版本與 ports 目錄中的當(dāng)前版本。

# pkg_version
cvsup =
docbook =
...

第二列的符號表示已安裝版本與本地 ports 目錄中可用版本的關(guān)系:

| 符號 | 含義 |
|------|------|
| = | 與本地 ports 樹中的版本相匹配 |
| < | 已安裝版本較舊 |
| > | 已安裝版本較新(本地 ports 樹可能未更新) |
| ? | 已安裝軟件包在 ports 索引中找不到(可能是因為早先安裝的 port 已從樹中移除或更名) |
| * | 軟件包有多個版本 |
| ! | 已安裝軟件包在索引中有記錄,但 pkg_version 無法比較版本號 |

3、刪除軟件包

要刪除已安裝的軟件包,只需使用 “pkg_delete(1)” 工具。

# pkg_delete xchat-1.7.1

請注意,”pkg_delete(1)” 需要提供完整的包名。如果只指定類似 “xchat” 的名稱,操作將被拒絕。不過,可以使用 “pkg_version(1)” 查看已安裝軟件包的版本。此外,還可以使用通配符:

# pkg_delete xchat*

這將刪除所有以 “xchat” 開頭的軟件包。

4、其他

所有已安裝軟件包的信息保存在 “/var/db/pkg” 目錄下。該目錄中的相關(guān)文件包含安裝文件的列表以及每個軟件包的內(nèi)容和描述。

  • 廣告合作

  • QQ群號:4114653

溫馨提示:
1、本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享網(wǎng)絡(luò)內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。郵箱:2942802716#qq.com(#改為@)。 2、本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)裁,轉(zhuǎn)載請注明出處“站長百科”和原文地址。
IMCART
下一篇: IMCART簡介