RPM安裝命令總結
在 Linux 作業系統下,幾乎所有的軟體均通過RPM 進行安裝、解除安裝及管理等操作。RPM 的全稱為Redhat Package Manager ,是由Redhat 公司提出的,用於管理Linux 下軟體包的軟體。Linux 安裝時,除了幾個核心模組以外,其餘幾乎所有的模組均通過RPM 完成安裝。RPM 有五種操作模式,分別為:安裝、解除安裝、升級、查詢和驗證。
1)用RPM安裝軟體包,最簡單的命令如下:
1 #rpm -i example.rpm 安裝 example.rpm 包; 2 #rpm -iv example.rpm 安裝 example.rpm 包並在安裝過程中顯示正在安裝的檔案資訊;3 #rpm -ivh example.rpm 安裝 example.rpm 包並在安裝過程中顯示正在安裝的檔案資訊及安裝進度
2)刪除已安裝的軟體包
要解除安裝軟體包example,只需輸入以下這行命令:
1 # rpm -e example
注意:軟體包名是example,而不是rpm檔名"example.rpm"。
3)升級軟體包
升級軟體類似於安裝軟體:
1 # rpm -Uvh example.rpm
使用者要注意的是:rpm會自動解除安裝相應軟體包的老版本。如果老版本軟體的配置檔案通新版本的不相容,rpm會自動將其儲存為另外一個檔案,使用者會看到下面的資訊:
saving /etc/example.conf as /etc/example.conf.rpmsave
這樣使用者就可以自己手工去更改相應的配置檔案。
另外如果使用者要安裝老版本的軟體,使用者就會看到下面的出錯資訊:
# rpm -Uvh example.rpm examle packag example-2.0-l(which is newer) is already installed error:example.rpm cannot be installed
安裝rpm到指定目錄
rpm -ivh --prefix=路徑 FILE.rpm
如果使用者要強行安裝就使用-oldpackage引數。
4)查詢軟體包
使用者可以用rpm -q在rpm的資料庫中查詢相應的軟體,rpm會給出軟體包的名稱,版本,釋出版本號,例如:
1 # rpm -q example
下面是查詢時可以使用的特定引數:
-a :查詢目前系統安裝的所有軟體包。
-f 檔名 :查詢包括該檔案的軟體包。
-F :同-f引數,只是輸入是標準輸入(例如 find /usr/bin | rpm -qF)
-q 軟體包名 : 查詢該軟體包
-Q :同-p引數,只是輸入是標準輸入(例如 find /mnt/cdrom/RedHat/RPMS | rpm -qQ)
下面是輸出時的格式選擇:
-i 顯示軟體包的名稱,描述,發行,大小,編譯日期,安裝日期,開發人員等資訊。
-l 顯示軟體包包含的檔案
-s 顯示軟體包包含的檔案目前的狀態,只有兩種狀態:normal和missing
-d 顯示軟體包中的文件(如man,info,README等)
-c 顯示軟體包中的配置檔案,這些檔案一般是安裝後需要使用者手工修改的,例如:sendmail.cf,passwd,inittab等
如果用-v引數就可以得到類似於ls -l的輸出
5)用rpm校驗軟體包
1 rpm -Vf 需要驗證到包
rpm 實用技巧!
1)使用者可以通過FTP來安裝軟體包。如果使用者能夠連上網路,想安裝某個新的軟體包時,可以直接用它的URL地址來安裝:
比如:現在在ftp.linuxsir.com/pub/linux/redhat/RPMS/下有這個檔案包:foo-1.0-1.i386.rpm,那就可以用這樣的命令:
1 # rpm -i ftp.linuxsir.com/pub/linux/redhat/RPMS/foo-1.0-1.i386.rpm
來安裝,也可以查詢!
2)如果使用者不小心誤刪了幾個檔案,但不確定到底是那些檔案,想對整個系統進行校驗,以瞭解哪些部分可能已經損壞,可以用:
1 # rpm -Va
3)如果使用者碰到一個人不出來的檔案,想要知道它是屬於那一個軟體包的話,可以這樣做:
1 # rpm -qf /usr/X11R6/bin/xjewel
結果會得到以下資訊:
xjewel-1.6-1
4)如果使用者得到一個新的RPM檔案,卻不清楚它的內容;或想了解某個檔案包將會在系統裡安裝那些檔案,可以這樣做:
1 # rpm -qpi koules-1.2-2.i386.rpm
結果會獲得很多資訊.
本文參考自以下文章:
http://www.cnblogs.com/nuke/archive/2009/03/03/1402067.html
http://www.jb51.net/LINUXjishu/10984.html
http://os.51cto.com/art/201001/177866.htm
http://linux.vbird.org/linux_basic/0520rpm_and_srpm.php#rpmmanager_dir