您的位置:首页 > 产品设计 > 产品经理

当RPM包安装遇上“依赖性”问题时的解决办法

2014-03-14 08:57 411 查看
预备安装的是一部LAMP(Linux+Apache+MySQL+PHP)服务器,系统使用Redhat Enterprise Linux AS4 Update4进行最小系统安装(Mini),然后在上面手动安装其它包,结果在安装Apache的时候就遇到了:

# rpm -ivh httpd-2.0.52-25.ent.i386.rpm

出现提示:

error: Failed dependencies:

httpd-suexec is needed by httpd-2.0.52-25.ent.i386

Suggested resolutions:

httpd-suexec-2.0.52-25.ent.i386.rpm

出错提示为:

错误:依赖关系失败;

httpd这个包需要httpd-suexec先行安装于系统;

解决提示:先安装httpd-suexec包

好,等我反过来,先运行:

# rpm -ivh httpd-suexec-2.0.52-25.ent.i386.rpm

出现提示:

error: Failed dependencies:

httpd = 2.0.52-25.ent is needed by httpd-suexec-2.0.52-25.ent.i386

Suggested resolutions:

httpd-2.0.52-25.ent.i386.rpm

出现了完全相反的提示,httpd-suexec包需要先行安装httpd包……

反复试了几次都这样,当时就傻眼了,甲安装的时候需要乙,而乙安装的时候又说需要甲……

后来在ChinaUnix论坛一位前辈的指导下,使用RPM管理器的--aid参数,尝试让RPM管理器自行解决包依赖关系问题,终于获得成功,并且一次性就把2个包一起安装到了系统中……

操作指令为:

# rpm -ivh --aid httpd-2.0.52-25.ent.i386.rpm

注意,--aid参数和-ivh不同,有2个“减号”……

安装过程中RPM先安装httpd包,在遇到与httpd-susexec包有依赖性的时候自动安装httpd-susexec包中的部分,1条指令结束后2个包就都安装到了系统中……

通过RPM管理器查询:

# rpm -qa | grep httpd

httpd-2.0.52-25.ent.i386.rpm

httpd-suexec-2.0.52-25.ent.i386.rpm

注:这篇文章有个地方不太明白,当运行# rpm -ivh httpd-2.0.52-25.ent.i386.rpm时,如果所需要的一个文件没有,系统会给个suggested revolution么?我自己在实验的时候好像没遇到过系统这样的提示啊~~大家有类似经历或者经验的可以分享下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: