日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux解决软件依赖的命令,通过yum解决软件的依赖关系

發布時間:2024/1/23 linux 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux解决软件依赖的命令,通过yum解决软件的依赖关系 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在安裝libX11-dev的時候遇到如下問題。

[root@localhost?Server]#?rpm?-ivh?--aid?libX11-devel-1.0.3-11.el5.i386.rpm

warning:?libX11-devel-1.0.3-11.el5.i386.rpm:?Header?V3?DSA?signature:?NOKEY,?key?ID?37017186

error:?Failed?dependencies:

libXau-devel?is?needed?by?libX11-devel-1.0.3-11.el5.i386

libXdmcp-devel?is?needed?by?libX11-devel-1.0.3-11.el5.i386

xorg-x11-proto-devel?>=?7.1-2?is?needed?by?libX11-devel-1.0.3-11.el5.i386

需要依賴關系

A、強制安裝----暴力型

使用rpm?-i?--force?--nodeps強制安裝。忽略依賴關系。這種方法你可以先裝A包,再裝B包,再裝C包。這樣還是有點隱患的,感覺不是很踏實(雖然其實目前沒發現什么不好)。安裝后使用成功的前提是:你要搞清楚依賴關系,并且把這些包都裝好。好處是:不用管它們的具體依賴關系先后順序。

B、一次性全裝上---一網打盡型

可以把依賴的幾個包拷出來放在同一個文件夾里?然后?rpm?-ivn?*.rpm這樣也可以?前提也是一個都不能少。

C、?使用yum技術安裝--使用服務器方式

yum是一個服務器資源技術。通過在線下載服務器資源的方式。?缺點:太繁瑣。要設置一堆的東西。優點:設置以后,很方便,需要的大多數資源都可以從服務器上找到。這點感覺很像maven2有木有?

參考:

D、使用redhat提供的解決方案,安裝依賴關系庫(強烈推薦)

例子:先安裝rpmdb,之后使用

#?rpm?-ivh?--aid?samba*.rpm?(一定要安裝rpmdb后才可以用這種方式安裝排除依賴關系)該命令會自動把依賴關系中需要安裝的包都安裝上,包括:cups-libs-1.1.17-13.3.6.rpmsamba-common-3.0.0-14.3E.i386.rpmsamba-3.0.0-14.3E.i386.rpmsamba-client-3.0.0-14.3E.i386.rpm可以很簡單地解決直接安裝samba-3.0.0-14.3E.i386.rpm或者samba-client-3.0.0-14.3E.i386.rpm對samba-common-3.0.0-14.3E.i386.rpm的依賴,而安裝sambacommon-3.0.0-14.3E.i386.rpm出現對都libcups.so.2庫文件的依賴,而且該庫文件所在的rpm包無法很快確定上述方法可以很快解決依賴關系

想要通過yum一勞永逸。

Yum可以從眾多軟件包倉庫中搜索軟件的依賴關系,因此可以減少由于依賴關系帶來的問題。還有就是我們在使用圖形界面時,在應用程序-添加刪除軟件下的瀏覽里是空的。如下圖:

第一種方法:(推薦)

第一步:新建一個文件夾,并把光盤內的所有文件復制到這個文件夾里:

[root@localhost?~]#?mkdir?/yum

[root@localhost?~]#?cp?-rvf?/misc/cd/*?/yum

第二步:備份repodata文件。因為有四個文件夾里都有這個文件,所以都要備份。

[root@localhost?~]#?mv?/yum/Server/repodata?/yum/Server/repodata.bak

[root@localhost?~]#?mv?/yum/VT/repodata?/yum/VT/repodata.bak

[root@localhost?~]#?mv?/yum/Cluster/repodata?/yum/Cluster/repodata.bak

[root@localhost?~]#?mv?/yum/ClusterStorage/repodata?/yum/ClusterStorage/repodata.bak

第三步:安裝工具包:

[root@localhost?~]#?rpm?-ivh?/yum/Server/createrepo-0.4.11-3.el5.noarch.rpm

第四步:生成倉庫數據庫:

[root@localhost?~]#?createrepo?-g?/yum/Server/repodata.bak/comps-rhel5-server-core.xml?/yum/Server/

[root@localhost?~]#?createrepo?-g?/yum/VT/repodata.bak/comps-rhel5-vt.xml?/yum/VT/

[root@localhost?~]#?createrepo?-g?/yum/Cluster/repodata.bak/?/yum/Cluster

[root@localhost?~]#?createrepo?-g?/yum/ClusterStorage/repodata.bak/comps-rhel5-cluster-st.xml?/yum/ClusterStorage/

第五步:查看倉庫數據文件:

[root@localhost?~]#?ls?/yum/Server/repodata/

comps-rhel5-server-core.xml?//這個文件軟件包組的分類。

filelists.xml.gz?other.xml.gz?primary.xml.gz?//這三個文件為軟件包列表文件。

repomd.xml???//這個文件為MD5校驗信息。

在/yum/VT?/yum/Cluster?/yum/ClusterStorage下面都有這幾個文件,作用和這一樣。如果想更新軟件包,只需把下載完的軟件包放在Server或者其他三個目錄里,再使用第四步重新生成數據庫文件即可。

第六步:客戶端配置:主要修改下面紅色的部分:

[root@localhost?~]#?cp?/etc/yum.repos.d/rhel-debuginfo.repo?/etc/yum.repos.d/chenbin.repo

[root@localhost?~]#?vi?/etc/yum.repos.d/chenbin.repo

[rhel-Server]

name=Red?Hat?Enterprise?Linux?$releasever?-?$basearch?-?Debug

baseurl=file:///yum/Server

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[rhel-VT]

name=Red?Hat?Enterprise?Linux?$releasever?-?$basearch?-?Debug

baseurl=file:///yum/VT

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[rhel-Cluster]

name=Red?Hat?Enterprise?Linux?$releasever?-?$basearch?-?Debug

baseurl=file:///yum/Cluster

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[rhel-ClusterStorage]

name=Red?Hat?Enterprise?Linux?$releasever?-?$basearch?-?Debug

baseurl=file:///yum/ClusterStorage

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

第七步:查看:如圖,已經出現軟件列表了。

如果在上圖中的編輯里選擇軟件存儲庫,就出現下圖:

如果把這里的勾去掉,再次打開就沒有軟件列表了,同時在/etc/yum.repos.d/chenbin.repo配置文件下的enabled=0。

清除一下yum安裝時的緩存:

[root@localhost?~]#?yum?clean?all

安裝一個軟件試試:

[root@localhost?~]#?rpm?-ivh?/yum/Server/httpd-2.2.3-22.el5.i386.rpm

warning:?/yum/Server/httpd-2.2.3-22.el5.i386.rpm:?Header?V3?DSA?signature:?NOKEY,?key?ID?37017186

error:?Failed?dependencies:

libapr-1.so.0?is?needed?by?httpd-2.2.3-22.el5.i386

libaprutil-1.so.0?is?needed?by?httpd-2.2.3-22.el5.i386

因為依賴關系,所以不能安裝。用如下命令安裝:

[root@localhost?~]#?yum?install?/yum/Server/httpd-2.2.3-22.el5.i386.rpm

系統會自動安裝完成。Yum缷載如下:

[root@localhost?~]#?yum?remove?httpd。

1.4總結:YUM常用命令:

1.安裝軟件包:

yum?install?package

yum?localinstall?package?從本機目錄安裝軟件包

yum?groupinstall?group?安裝某個組件的全部軟件包

2.更新軟件包:

yum?update?package

yum?check-update?列出所有可更新的軟件包

yum?list?updates?mysql*?查找mysql的更新

yum?update?更新所有可更新的軟件包

yum?update?mysql*?更新所有mysql的軟件包

yum?groupupdate?group?更新某個組件的所有軟件包

yum?list?列出所有已安裝和倉庫中可用的軟件包

yum?list?available?列出倉庫中所有可用的軟件包

yum?list?updates?列出倉庫中比當前系統更新的軟件包

yum?list?installed?列出已安裝的軟件包

yum?list?recent?列出新加入倉庫的軟件包

yum?info?查詢軟件包信息

3.刪除軟件包:

yum?remove?package

yum?groupremove?group?刪除某個組件的全部軟件包

4.清除軟件包

yum?clean?packages?清除遺留在緩存里的包文件

yum?clean?metadata?清除遺留在緩存里的元數據

yum?clean?headers?清除遺留在緩存里的頭文件

yum?clean?all?清除包文件,元數據,頭文件

5.搜索軟件包:

yum?search?package

yum?info?package?查找一個軟件包的信息

yum?list?package?列出包含指定信息的軟件包

yum?list?installed?列出已安裝的軟件包

yum?list?extras?列出不是通過軟件倉庫安裝的軟件包

yum?list?*ttp*?列出標題包含ttp的軟件包

yum?list?updates?列出可以更新的軟件包

6.查找特定文件是由什么軟件包提供的:

yum?whatprovides?filename

例子:

yum?whatprovides?httpd.conf

可用選項

–disalberepo=lib禁用某個軟件倉庫

–enalberepo=lib啟用某個軟件倉庫

-C?禁用使用本機緩存的元數據

例子:

yum?–disalberepo=livna|–enalberepo=livna?install?mplayer

yum?-C?info?httpd

目前依舊無法用yum install來安裝軟件。

總結

以上是生活随笔為你收集整理的linux解决软件依赖的命令,通过yum解决软件的依赖关系的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。