rpm 安装 忽略依赖_rpm 解决依赖的方法

前言:常用RPM的朋友们都知道,RPM简单易用,但是它的依赖关系是最头疼的!

有时候比方说A包需要B包,B包需要C包,C包需要A包,好了。这就是最常见的死锁了(类似数据库有木有?)。

这个时候有以下几种方式可以解决:

A、强制安装 ----暴力型

# rpm  -ivh--force --nodepsgcc-c++-4.1.2-42.el5.i386.rpm

warning: gcc-c++-4.1.2-42.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186

Preparing...                ########################################### [100%]

1:gcc-c++                   ########################################### [100%]

使用rpm -ivh --force --nodeps  强制安装。忽略依赖关系。这种方法你可以先装A包,再装B包,再装C包。这样还是有点隐患的,感觉不是很踏实(虽然其实目前没发现什么不好)。安装后使用成功的前提是:你要搞清楚依赖关系,并且把这些包都装好。好处是:不用管它们的具体依赖关系先后顺序。

B、一次性全装上--- 一网打尽型

可以把依赖的几个包拷出来放在同一个文件夹里 然后 rpm -ivn *.rpm   这样也可以 前提也是一个都不能少。

#rpm -ivn *.rpm

# yum  -y  localinstall  *.rpm

C、 使用yum技术安装 --使用服务器方式

yum是一个服务器资源技术。通过在线下载服务器资源的方式。

缺点:太繁琐。要设置一堆的东西。优点:设置以后,很方便,需要的大多数资源都可以从服务器上找到。

yum deplist  PACKAGE_NAME  列出一个包所有的依赖

如果没有yum源,我们要离线在一台服务器上安装httpd,那么可以把所有依赖打包:

#export  LANG=en_US.utf-8

# yum deplist  httpd | grep provider | awk '{print $2}' | sort | uniq

# yumdownloader  $(yum deplist  httpd | grep provider | awk '{print $2}' | sort | uniq)

#yumdownloader  httpd

然后在安装服务器上:

#yum -y localinstall httpd

注:注意软件包的版本

检查系统是否已安装某个软件包:

#rpm  -q  --qf   '%{NAME}-%{VERSION}-%{RELEASE}(%{ARCH})\n'    PACKAGE_NAME

D、自建仓库

# yum -y install  createrepo

#mkdir -p /var/ftp/pub/localrepo

#mv -f  oracle_depspackage/*/var/ftp/pub/localrepo

#touch /etc/yum.repos.d/localrepo.repo

#echo "[localrepo]" >> /etc/yum.repos.d/localrepo.repo

#echo "name=Unixmen Repository" >> /etc/yum.repos.d/localrepo.repo

#echo "baseurl=file:///var/ftp/pub/localrepo" >> /etc/yum.repos.d/localrepo.repo

#echo "gpgcheck=0" >> /etc/yum.repos.d/localrepo.repo

#echo "enabled=1"  >> /etc/yum.repos.d/localrepo.repo

#createrepo -v /var/ftp/pub/localrepo

#yum clean all

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值