RedHatLinux操作系統軟件包的管理
1. 安裝、升級與刪除軟件包都很容易
2. 查詢非常簡單
3. 能夠進行軟件包的驗證
4. 支持源代碼形式的軟件包
下面的說明,將充分體現出以上四個優點。
RPM軟件包通常是以xxx.rpm的格式命名的,就好像HP-UX下標準的軟件包是xxx.depot的形式一樣。一般,一個標準的RPM軟件包的名字能夠告訴我們一些信息,例如rhviewer-3.10a-13.i386.rpm,從這樣一個名字的RPM軟件包,我們可以知道,軟件的名稱是rhviewer,版本是3.10a,次版本是13,運行的平臺是i386。
RPM通常有5種方式來管理RPM軟件包:安裝、刪除、升級、查詢和驗證。
1. 安裝
#rpm -ivh rhviewer-3.10a-13.i386.rpm
其中使用到的參數ivh說明如下:
i: 使用RPM的安裝模式
v: 在安裝的過程中顯示安裝的信息
h: 在安裝的過程中輸出#號
另外,RPM還能夠通過FTP來進行遠程安裝,形式其實和本地安裝差不多,只要在文件名的前面加上適當的路徑就可以了:
#rpm -ivh ftp://xxxx/rhviewer-3.10a-13.i386.rpm
注意:對于遠程安裝來說,建議不要忘記h參數,不然可能不知道安裝程序是否還在進行。或者,也可以通過--percent參數來知道安裝的進度。對于詳細幫助信息,可以通過#rpm --help或者#man rpm來獲得。
在安裝過程中,可能會經常遇到以下幾種情況:
<1>重復安裝軟件包
如果要安裝的軟件之前已經安裝過,就會在安裝過程中出現以下錯誤信息:
#rpm -ivh rhviewer-3.10a-13.i386.rpm
package rhviewer-3.10a-13 is already installed
如果確定重新安裝一次,可以加上--replacepkgs參數:
#rpm -ivh --replacepkgs rhviewer-3.10a-13.i386.rpm
<2>軟件包中用到的某個文件已經被其他軟件包安裝
這種情況可能最常出現,多個軟件包都包含某個或某些文件,當安裝了第一個軟件包,再安裝其他軟件包的時候,就會出現以下錯誤:
#rpm -ivh rhviewer-3.10a-13.i386.rpm
rhviewer /usr/bin/rhviewer conflicts with file from msviewer-1.10b-01
error: rhviewer-3.10a-13.i386.RPM cannot be installed
此時,可以用--replacefiles參數:
#rpm -ivh --replacefiles rhviewer-3.10a-13.i386.rpm
<3>軟件包之間的相關性
有的時候,一個軟件包的作用要基于另外一個軟件包,如果安裝該軟件包時候沒有安裝需要的另外一個軟件包,就會有錯誤信息:
#rpm -ivh rhviewer-3.10a-13.i386.rpm
failed dependencies: rhviewer is needed by rhpainter-2.24-20
此時,建議先安裝這個需要的軟件包。不過,如果你愿意嘗試一下是否不安裝這個需要的軟件包是否也能夠正常使用你真正要安裝的軟件的話,可以加上--nodeps參數:
#rpm -ivh --nodps rhviewer-3.10a-13.i386.rpm
2. 刪除
#rpm -e rhviewer
注意:這里接的不是安裝時候軟件包的名字rhviewer-3.10a-13.i386.rpm,而只要用rhviewer或者rhviewer-3.10a-13就可以了。建議的方式是先用RPM查詢出你要刪除的軟件,然后用該命令刪除。
這里最常出現的錯誤提示就是,當你要刪除的軟件包被其他軟件包關聯時候,就會出現錯誤提示:
#rpm -e rhviewer
removing these packages would break dependencies: rhviewer is neededby rhpainter-2.24-20
3. 升級
更新軟件包的版本到最新版本,也是經常用到的:
#rpm -Uvh rhviewer-3.10a-13.i386.rpm
升級軟件的模式其實是先刪除舊軟件包,然后再安裝新軟件包。而且,你還可以選擇用這種升級的模式來安裝軟件包,因為,沒有舊軟件包的情況下,此升級方式仍然可正常運行。
如果系統中有舊版本存在,你就可以看到以下信息:
#rpm -Uvh rhviewer-3.10a-13.i386.rpm
saving /etc/rhviewer.conf as /etc/rhviewer.conf.rpmsave
如果,你要降低當前版本到更老的版本,一個辦法就是刪除該版本,然后再重新安裝舊的版本,也可以用--oldpackage參數來進行“升級”:
#rpm -Uvh --oldpackage rhviewer-3.10a-13.i386.rpm
補充說明:
還有一種升級的安裝方式:更新。
#rpm -Fvh rhviewer-3.10a-13.i38
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解