天天看點

linux下軟體包的安裝(rpm,yum)

使用rpm安裝軟體

為了友善linux 使用者添加和删除軟體,Red Hat 公司提出了軟體包管理器RPM,由于它的出現使得在linux 中安裝、解除安裝應用程式變得相對簡單,預設情況下(即不出現檔案依賴問題)使用者隻需輕按兩下rpm 軟體包,系統會自動進行安裝。

一個rpm封包件是能夠讓應用軟體運作的全部檔案的一個集合,它記錄了二進制軟體的内容、安裝的位置、軟體包的描述資訊、軟體包之間的依賴關系等資訊。RPM 工具對系統中全部rpm 軟體包進行全面管理,是以它能夠記住使用者添加了什麼以及這些軟體每個檔案的具體安裝路徑,以便使用者完全地、徹底地删除。一般來說,rpm 軟體包釋出的軟體比需要手工編譯的軟體容易安裝和維護,但是有些rpm軟體包需要大量的依賴包,這時如果沒有聯網也是比較頭痛的一件事情。

軟體安裝流程:

linux下軟體包的安裝(rpm,yum)

RPM包管理的用途;

1、可以安裝、删除、更新和管理軟體;當然也支援線上安裝和更新軟體;

2、通過RPM包管理能知道軟體包包含哪些檔案,也能知道系統中的某個檔案屬于哪個軟體包;

3、可以在查詢系統中的軟體包是否安裝以及其版本;

4、作為開發者可以把自己的程式打包為RPM 包釋出;

5、軟體包簽名GPG和MD5的導入、驗證和簽名釋出

6、依賴性的檢查,檢視是否有軟體包由于不相容而擾亂了系統;

RPM 的使用權限;

RPM軟體的安裝、删除、更新隻有root權限才能使用;對于查詢功能任何使用者都可以操作;如果普通使用者擁有安裝目錄的權限,也可以進行安裝;

在對包安裝前我們可以使用rpm -qa 包名稱  來查詢包是否安裝

rpm 的一點簡單用法;

在終端中我們可以使用rpm -i [選項] [rpm 封包件名]來進行安裝

使用rpm -ivh 包名稱  對包進行安裝

linux下軟體包的安裝(rpm,yum)

rpm常用選項如下:

rpm -ql   包名稱  對安裝的包的資訊進行查詢

rpm -qa   包名稱  查詢包是否安裝

rpm -e    包名稱  對安裝的包解除安裝

rpm -Uvh  包名稱  對包進行更新和安裝

rpm -Fvh  包名稱  隻對包進行更新

rpm -V    包名稱  對包的資訊進行檢校

rpm --replacepkge 無論軟體包是否已被安裝,都強行安裝軟體包

rpm --test         安裝測試,并不實際安裝

rpm --nodeps       忽略軟體包的依賴關系強行安裝(一般不能正常運作,因為缺少依賴檔案)

rpm --force        忽略軟體包及檔案的沖突

rpm --qpi          檢視一個軟體包的用途、版本等資訊

rpm --oldpackage   由新版本降級為舊版本

rpm --import       導入簽名檔案 

rpm包安裝時對于包之間的依賴關系不會自動解決,隻會在螢幕上提示

更為詳細的具體的,請參考#man rpm

使用yum來安裝軟體

yum安裝可以分為網絡yum和本地yum

yum  list  all  檢視所有的按準國寶

yum info   包名稱   檢視包的安裝資訊

yum安裝最大的有事就是可以幫助我們解決包的依賴關系,而rpm就不行

網絡安裝

在使用網絡安裝的要確定所有的網絡中有一台被使用做yum的服務的服務端(這個yum伺服器的登陸方法可是是ftp,http,nfs的),此次實驗使用的ftp服務

首先我們現在網絡上找一台機器作為ftp伺服器(安裝yum伺服器)

ftp的ip位址是192.168.2.100

linux下軟體包的安裝(rpm,yum)

接着把CD光牒/dev/cdrom/Server上的内容拷貝到/var/ftp下,這樣我們可以直接通路

linux下軟體包的安裝(rpm,yum)

因為CD光牒上的檔案比較大,拷貝下來大概需要十幾分鐘,拷貝完成後啟動vsftpd服務

我們在打開另外一台機器。作為部署yum服務的用戶端

修改/etc/yum.repos.d/rhel-debuginfo.repo檔案,指明yum伺服器的網絡位置

linux下軟體包的安裝(rpm,yum)

配置好後,我們就可以開始安裝軟體包了,我們一安裝devecot為例

linux下軟體包的安裝(rpm,yum)

我們看到他有好幾個的包依賴關系,但是不用擔心,因為yum會自動幫我們解決

linux下軟體包的安裝(rpm,yum)

直接輸入 y 鍵(對于這種情況,我們可以在安裝的時候在結尾處添加一個  -y 的參數),到安裝完成。

在對于安裝的包想要解除安裝時,使用yum removed 軟體包名 就ok!

剛才的是安裝一個包。當我們想要安裝一個組的時候,

我們就使用yum groupinstall 包組名稱

linux下軟體包的安裝(rpm,yum)

對于包的名稱中有空格的情況我們要把包組的名稱使用雙引号引起來

組的解除安裝指令和包的相似,指令是:yum gropuremove 包組名稱

本地yum安裝 

例如我們安裝apache伺服器

因為是本地安裝,是以需要修改/etc/yum.repos.d/rhel-debuginfo.repo檔案,指明yum本地位置,把baseuarl修改為 

baseurl=file:///mnt/cdrom/Server

enable=1

gpgkey=file:///mnt/cdrom/RPM-KRY-redhat-release

首先進入CD光牒執行

linux下軟體包的安裝(rpm,yum)

按下 y 鍵繼續(可以

linux下軟體包的安裝(rpm,yum)

來避免詢問),然後就安裝成功了!

繼續閱讀