安裝rpm包時遇到error: Failed dependencies:錯誤

在linux下安裝rpm包時經常會遇到下面這個問題:
error: Failed dependencies:
.....................................................
省略號表示安裝此rpm缺少的包。
遇到此問題時可以在安裝rpm包命令的後面加兩個參數,如:
rpm -ivh libstdc++5.0-3.3.3-62745cl.i386.rpm
改成:
rpm -ivh libstdc++5.0-3.3.3-62745cl.i386.rpm --nodeps --force

加上那兩個參數的意義就在於,
安裝時不再分析包之間的依賴關係而直接安裝,
也就不會再提示error: Failed dependencies:這樣的錯誤了

在RedHat Linux和Mandrake等兼容RedHat的發行版中,整個發行版都是利用RPM安裝的。所以安裝新軟件的最好方

法是從網絡上下載rpm包。
1)用RPM安裝軟件包,最簡單的命令如下:

# rpm -ivh foo-1.0-l.i386.rpm (這裏講的軟件包是foo-1.0-l.i386.rpm,以下都是)

foo####################

下面rpm就會輸出該軟件包的名稱,並顯示一個狀態條。安裝很簡單。

2)拆除已安裝的軟件包
要反安裝軟件包foo,只需輸入以下這行命令:

# rpm -e foo

注意:軟件包名是foo,而不是rpm文件名"foo-1.0-l.i386.rpm"。

3)升級軟件包
升級軟件類似於安裝軟件:

# rpm -Uvh foo-2.0-l.i386.rpm

foo####################

用戶要注意的是:rpm會自動反安裝相應軟件包的老版本。如果老版本軟件的配置文件通新版本的不兼容,rpm會自動將其保存爲另外一個文件,用戶會看到下面的信息:

saving /etc/foo.conf as /etc/foo.conf.rpmsave

這樣用戶就可以自己手工去更改相應的配置文件。
另外如果用戶要安裝老版本的軟件,用戶就會看到下面的出錯信息:

# rpm -Uvh foo-1.0-l.i386.rpm

foo packag foo-2.0-l(which is newer) is already installed

error:foo-1.0-l.i386.rpm cannot be installed

如果用戶要搶行安裝就使用-oldpackage參數。

4)查詢軟件包
用戶可以用rpm -q在rpm的數據庫中查詢相應的軟件,rpm會給出軟件包的名稱,版本,發佈版本號,例如:

# rpm -q foo

foo-2.0-l

下面是查詢時可以使用的特定參數:
-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校驗軟件包
用戶可以用rpm來校驗已經安裝的軟件包,rpm可以校驗文件大小、MD5校驗碼、文件權限、類型和屬主等信息。
下面是校驗時的參數說明:
-a 簡單校驗軟件包中的文件是否存在
-b 校驗軟件包中的單個文件
-c 校驗安裝的所有軟件包
-d 比較一個源軟件包和已經安裝的軟件包

如果檢驗通過就沒有任何出錯信息,如果有出錯信息,它的格式如下:出錯信息是一個8位的字符串,如果是一個".",就代表沒有問題,下面是相應的字符的意義:
5 MD5校驗錯
S 文件大小錯
L 符號連接
T 文件修改時間錯
D 設備文件錯
U 用戶名錯
G 組名錯
M 屬性(包括改寫權和文件類型)錯
如果用戶看到這些信息,最好重新安裝或者手工修復。

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

rpm 實用技巧!
1)用戶可以通過FTP來安裝軟件包。如果用戶能夠連上網絡,想安裝某個新的軟件包時,可以直接用它的URL地址來安裝:
比如:現在在ftp.linuxsir.com/pub/linux/redhat/RPMS/下有這個文件包:foo-1.0-1.i386.rpm,那就可以用這樣的命令:

# rpm -i ftp.linuxsir.com/pub/linux/redhat/RPMS/foo-1.0-1.i386.rpm

來安裝,也可以查詢!

2)如果用戶不小心巫山了幾個文件,但不確定到底是那些文件,想對整個系統進行校驗,以瞭解哪些部分可能已經損壞,可以用:

# rpm -Va

3)如果用戶碰到一個人不出來的文件,想要知道它是屬於那一個軟件包的話,可以這樣做:

# rpm -qf /usr/X11R6/bin/xjewel

結果會得到以下信息:
xjewel-1.6-1

4)如果用戶得到一個新的RPM文件,卻不清楚它的內容;或想了解某個文件包將會在系統裏安裝那些文件,可以這樣做:

# rpm -qpi koules-1.2-2.i386.rpm

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章