linux安裝包管理
標簽(空格分隔): linux
Linux 下的軟件包管理工具
linux下的軟件安裝可以通過兩種方式,一種是直接使用自帶的軟件包管理工具安裝,另外一種通過編譯源碼安裝。
1.軟件包的種類
Red Hat和Fedora:redhat最早發行的個人版本的Linux,自從Red Hat 9.0版本發布後,RedHat 公司就不再開發桌面版的 Linux發行套件,Red Hat Linux停止了開發,而將全部力量集中在服務器版的開發上,也就是 Red Hat Enterprise Linux 版。2004年4月30日,Red Hat公司正式停止對Red Hat 9.0版本的支援,標志著Red Hat Linux的正式完結。原本的桌面版Red Hat Linux發行套件則與來自開源社區的 Fedora 計劃合並,成為 Fedora Core 發行版本。
目前Red Hat分為兩個系列:
由Red Hat公司提供收費技術支持和更新的Red Hat Enterprise Linux(RHEL),以及由社區開發的免費的Fedora Core。
特點:面向個人桌面應用系統,采用基於rpm/yum管理軟件包。
RHEL(Red Hat Enterprise Linux)和CentOS:RHEL是Red Hat企業版,提供商業支持。CentOS是對RHEL重新編譯而成,免費而穩定。
特點:面向企業服務器使用,安全穩定,采用基於rpm/yum管理軟件包。
Debian和Ubuntu:Debian是社區類Linux的典范,是迄今為止最遵循GNU規范。Ubuntu基於Debian發行版和GNOME桌面環境.它使用Bash作為基礎Shell,所以在很多基礎命令上,ubuntu與CentOS的差別不是很明顯,而ubuntu在桌面界面上要做的更為出色,還有類似的Kunbuntu/Xubuntu等。
特點:面向桌面應用,采用apt-get/dpkg包管理方式。
以上只需要了解一下就可以。
主要有兩個:.deb和.rpm
“.deb”包是由Debian社區開發的一種包,”rpm”是來自於Redhat
包類型 使用這種包的linux發行版
Debian Style(.deb) Debian, Ubuntu, Xandros, Linspire等
Red Hat Style(.rpm) Fedora, CentOS, Red Hat Enterprise Linux等
而兩種包的管理工具主要分為:
| linux發行版 | 底層工具 | 上層工具 | Debian.Ubuntudpkgapt-getFedora, Red Hat Enterprise Linux, CentOSrpmyum從表中可以很容易看出,linux的軟件包管理工具分為兩個層次的,所以下面介紹下軟件包管理工具的一些基本使用。各有好處,根據自己所在的平台來判斷使用哪一個。
2.軟件包管理工具的使用:安裝、升級、查詢、卸載
2.1 DEB包
2.1.1 DPKG
一個 DEB 包包含了已壓縮的軟件文件集以及該軟件的內容信息(在頭文件中保存),通常表現為以 .deb 擴展名結尾的文件,例如 package.deb 。對其操作,需要使用 dpkg 命令。
DPKG 命令常用參數
DPKG 的常規使用方法為 dpkg -? Package(.rpm), 其中 -? 為安裝參數 ( 更多信息,請查閱幫助 $man rpm):
[code]-l 在系統中查詢軟件內容信息
--info 在系統中查詢軟件或查詢指定 rpm 包的內容信息
-i 在系統中安裝 / 升級軟件
-r 在系統中卸載軟件 , 不刪除配置文件
-P 在系統中卸載軟件以及其配置文件
DPKG 命令參數使用方法
安裝 DEB 包命令
$ sudo dpkg -i package.deb
升級 DEB 包命令
$ sudo dpkg -i package.deb ( 和安裝命令相同)
卸載 DEB 包命令
$ sudo dpkg -r package.deb #不卸載配置文件
$ sudo dpkg -P package.deb # 卸載配置文件
查詢 DEB 包中包含的文件列表命令
$ sudo dpkg-deb -c package.deb
查詢 DEB 包中包含的內容信息命令
$ dpkg –info package.deb
查詢系統中所有已安裝 DEB 包
$ dpkg -l package
2.1.2 更友好的包管理軟件 - APT
APT 的全稱為 Advanced Packaging Tools 。與 YUM 對應,它最早被設計成 DPKG 的前端軟件,現在通過 apt-rpm 也支持 rpm 管理。而本節本節將介紹 APT 作為 DPKG 前端的使用。 APT 的主要包管理工具為 APT-GET,通過此工具可滿足和上述 YUM 相似的功能要求。
APT 的軟件源定義來自 /etc/apt/sources.list 文件:
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://cn.archive.ubuntu.com/ubuntu/ hardy main restricted
deb-src http://cn.archive.ubuntu.com/ubuntu/ hardy main restricted
注意每次手動修改上述文件後,需要使用 sudo apt-get update 來更新系統的源使新的源數據被當前系統識別。
UBUNTU 中 APT 的配置文件位於 /etc/apt/apt.conf.d,其中的多個配置文件依功能分類。
一般在剛裝上ubuntu系統之後需要添加源,添加所在地區的源會比較快的,關於這個直接百度就可以了。
APT 常用命令
更新源索引
$ sudo apt-get update #一般在安裝軟件和更新源之後需要執行這條命令。
安裝指定軟件
$ sudo apt-get install package-name
下載指定軟件的源文件
$ sudo apt-get source package-name
將系統中所有軟件升級到最新版本
$ sudo apt-get upgrade
將操作系統連同所有軟件升級到最新版本
$ sudo apt-get dist-upgrade
卸載指定軟件
$ sudo apt-get remove package-name
更多有關 APT 的信息,請查閱 http://www.debian.org/doc/manuals/apt-howto/index.en.html 。
2.2 RPM包
RPM 包的安裝 / 升級 / 查詢 / 卸載
一個 RPM 包包含了已壓縮的軟件文件集以及該軟件的內容信息(在頭文件中保存),通常表現為以 .rpm 擴展名結尾的文件,例如 package.rpm 。對其操作,需要使用 rpm 命令。下面介紹 rpm 工具的參數和使用方法,並以 IBM Lotus Notes 在 RHEL 5.2 安裝為例做具體說明。
2.2.1 RPM
RPM 命令常用參數
RPM 的常規使用方法為 rpm -? package.rpm,其中 -? 為操作參數 ( 更多信息,請查閱幫助 $man rpm):
[code]-q 在系統中查詢軟件或查詢指定 rpm 包的內容信息
-i 在系統中安裝軟件
-U 在系統中升級軟件
-e 在系統中卸載軟件
-h 用 #(hash) 符顯示 rpm 安裝過程
-v 詳述安裝過程
-p 表明對 RPM 包進行查詢,通常和其它參數同時使用,如:
-qlp 查詢某個 RPM 包中的所有文件列表
-qip 查詢某個 RPM 包的內容信息
RPM 命令參數使用方法
以上參數有些需要組合使用,比如說 rpm -h package.rpm 是沒有意義的,但 rpm -ih package.rpm 即表示安裝 package 並用 # 符顯示安裝進度。
安裝 RPM 包
# rpm -ivh package.rpm
升級 RPM 包命令
# rpm -Uvh package.rpm
卸載 RPM 包命令
# rpm -ev package
查詢 RPM 包中包含的文件列表命令
# rpm -qlp package
查詢 RPM 包中包含的文件列表命令
# rpm -qlp package
查詢 RPM 包中包含的內容信息命令
# rpm -qip package
查詢系統中所有已安裝 RPM 包
# rpm -qa
2.2.2 更友好的包管理軟件 - YUM
YUM
YUM 基於 RPM 包管理工具,能夠從指定的源空間(服務器,本地目錄等)自動下載目標 RPM 包並且安裝,可以自動處理依賴性關系並進行下載、安裝,無須繁瑣地手動下載、安裝每一個需要的依賴包。此外,YUM 的另一個功能是進行系統中所有軟件的升級。如上所述,YUM 的 RPM 包來源於源空間,在 RHEL 中由 /etc/yum.repos.d/ 目錄中的 .repo 文件配置指定,如 rhel-debuginfo.repo 的內容:
rhel-debuginfo.repo
[rhel-debuginfo]
name=Red Hat Enterprise Linux 5Client - i386 - Debug
baseurl=ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Client/en/os/i386/Debuginfo/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
YUM 的系統配置文件位於 /etc/yum.conf,內容如:
[main]
cachedir=/var/cache/yum
keepcache=1
debuglevel=2
pkgpolicy=newest
logfile=/var/log/yum.log
distroverpkg=redhat-release
tolerant=1
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
exclude= firefox gftp
配置文件用來定義用戶期望的 yum 行為,比如,gpgcheck 表明安裝時不進行 gpg 驗證,exclued=firefox gftp 表明進行系統全軟件升級時不升級 firefox 和 gftp 。
YUM 常用命令
安裝指定軟件 :
# yum -y install package-name
-列出系統中已安裝軟件
# yum list
列出系統中可升級的所有軟件
# yum check-update
升級系統中可升級的所有軟件
# yum update
升級指定軟件
# yum update package-name
在升級過程中接受所有互動問答
# yum -y update
卸載指定軟件
# yum remove package-name
更多有關 YUM 的信息,請查閱 http://fedoraproject.org/wiki/Tools/yum 。
參考博客:
軟件包管理
Linux 平台上的軟件包管理