使用fedora/redhat/centos系列的linux发行版,有时会因为某些非正常原因(异常断电居多)造成yum/rpm错误,表现是在运行yum时出现依赖包错误,仔细查看其相关包,会发现这些包是矛盾的版本号依赖。这种情况下,通常就是本机rpm数据库里记录了某个rpm包多个版本(可能事实上只装了一个版本),通过rpm -q {包名} 会查出来多个版本,例如
[root@fscfedora feng]# rpm -q audit
audit-2.3.2-1.fc20.x86_64
audit-2.3.3-1.fc20.x86_64
我们需要删除其中一个包,通常删除旧版本的包,命令: rpm -e {带版本号的完整包名}。
但这时通过yum或rpm -e移除该包时,有时仍旧出现依赖错误。
这是可以通过rpm 的 –noscript参数,硬性移除该包(指定完整的版本号),例如
[root@fscfedora feng]# rpm -e –noscripts audit-2.3.2-1.fc20.x86_64
然后再检查该包,会发现少了已删除的那个。然后继续yum吧,如果还有类似情况,同法处理之。
tips,我们还可以运行 yum check 检查是否有类似的错误包。
————————
参考脚本:
[root@fscfedora feng]# rpm -q audit
audit-2.3.2-1.fc20.x86_64
audit-2.3.3-1.fc20.x86_64
[root@fscfedora feng]# rpm -e –noscripts audit-2.3.2-1.fc20.x86_64
[root@fscfedora feng]# rpm -q audit
audit-2.3.3-1.fc20.x86_64
[root@fscfedora feng]#
典型错误示例:
–> 解决依赖关系完成
错误:软件包:glibc-devel-2.18-11.fc20.x86_64 (@anaconda)
需要:glibc-headers = 2.18-11.fc20
正在删除: glibc-headers-2.18-11.fc20.x86_64 (@anaconda)
glibc-headers = 2.18-11.fc20
更新,由: glibc-headers-2.18-12.fc20.x86_64 (updates)
glibc-headers = 2.18-12.fc20
您可以尝试添加 –skip-broken 选项来解决该问题
** 发现 19 个已存在的 RPM 数据库问题, ‘yum check’ 输出如下:
1:NetworkManager-0.9.9.0-24.git20131003.fc20.x86_64 有缺少的需求 NetworkManager-glib(x86-64) = (‘1’, ‘0.9.9.0’, ’24.git20131003.fc20′)
1:NetworkManager-0.9.9.0-28.git20131003.fc20.x86_64 是 1:NetworkManager-0.9.9.0-24.git20131003.fc20.x86_64 的副本
audit-2.3.2-1.fc20.x86_64 有缺少的需求 audit-libs = (‘0’, ‘2.3.2’, ‘1.fc20’)
延伸阅读
- linux下RPM技巧应用
- centos 7 下rpm/yum安装inconsolata字体
- pkgs.org: Linux Packages Search
- RPMforge, 很不错的centos RPM/yum源
- fedora/linux升级firefox/fedora13安装新版本firefox
- 利用安装光盘创建本地 yum 源补装 RPM 软件包
- 查看一个rpm包中包含那些文件/文件属于哪个rpm包
- centos/redhat/fedora下rpm安装nload监测网卡流量/非手工编译/linux实时带宽监控
- RPM 的介绍和应用(很详尽的文档)
- fedora 12,13,14,15,16/centOS/redhat EL 使用第三方yum 源rpmfusion.org
- fedora配置国内yum更新源/以配置163开源镜像为例
- 供centos用的yum源(redhat, scientific)/不定期更新
- rpmfusion.org:redhat/fedora系列RPM/yum软件包仓库
- centOS 6下通过yum安装php-mssql以使php支持microsoft sql server连接
- centos 6下通过yum安装apache模块mod_h264_streaming, mod_flvx, mod_xsendfile等
0 条评论。