当我尝试在CentOS 6.3机器上运行yum update
时,我得到了错误,并告诉我要运行yum check
。yum check
的输出为:
➜ ~ yum check
Loaded plugins: fastestmirror
glibc-2.12-1.107.el6_4.5.x86_64 is a duplicate with glibc-2.12-1.107.el6_4.4.x86_64
glibc-common-2.12-1.107.el6_4.5.x86_64 is a duplicate with glibc-common-2.12-1.107.el6_4.4.x86_64
glibc-devel-2.12-1.107.el6_4.5.x86_64 is a duplicate with glibc-devel-2.12-1.107.el6_4.4.x86_64
glibc-devel-2.12-1.107.el6_4.5.x86_64 has missing requires of glibc-headers = ('0', '2.12', '1.107.el6_4.5')
iputils-20071127-17.el6_4.2.x86_64 is a duplicate with iputils-20071127-17.el6_4.x86_64
nspr-4.9.5-2.el6_4.x86_64 is a duplicate with nspr-4.9.2-1.el6.x86_64
nss-3.14.3-4.el6_4.x86_64 is a duplicate with nss-3.14.0.0-12.el6.x86_64
nss-softokn-3.14.3-3.el6_4.x86_64 is a duplicate with nss-softokn-3.12.9-11.el6.x86_64
nss-util-3.14.3-3.el6_4.x86_64 is a duplicate with nss-util-3.14.0.0-2.el6.x86_64
tzdata-2013g-1.el6.noarch is a duplicate with tzdata-2013c-2.el6.noarch
2:xinetd-2.3.14-39.el6_4.x86_64 is a duplicate with 2:xinetd-2.3.14-38.el6.x86_64
Error: check all
你知道怎么修复这些包吗?我尝试过yum reinstall xinetd tzdata nss-util nss-softokn nss nspr iputils glibc glibc-common glibc-devel
,但得到了:
错误:发现多语言版本问题。这通常意味着根本原因是其他原因,而多库版本检查只是指出存在问题。
发布于 2013-12-04 16:12:44
对我来说,看起来你在升级包的过程中重新启动了你的电脑(或者它崩溃了)。所以安装了新的软件包,但没有删除旧的软件包。
首先看看您是否有任何未完成的事务:yum-complete-transaction
如果这没有帮助,那么看看包清理工具,它是yum-utils包的一部分。
包-清理--dupes列出重复的包
清理包--删除重复的包
但要小心使用该命令,并在删除重复项之前创建备份。
发布于 2018-10-25 11:11:25
这就是我用471个副本修复一台CentOS 7服务器的方法。
首先,我必须安装yum utils:
yum install yum-utils
我已经尝试了yum-complete-transaction和其他东西,但没有成功,我放弃了这个事务:
yum-complete-transaction --cleanup-only
然后我得到了一个重复包的排序列表,这样我就可以识别较旧的版本,以便以后删除过滤偶数和奇数行:
package-cleanup --dupes | sort -u > dupes.out
然后,我从这个排序的文件中获得了一个卸载列表:
cat dupes.out | grep -v 'Loaded plugins:' | sort -u | awk 'NR % 2 == 1' > uninstall.in
然后我从rpm数据库中删除了旧版本:
for f in `cat uninstall.in`; do rpm -e --nodeps -f --justdb $f; done
最后,我可以继续定期进行系统升级:
yum upgrade
需要注意的几点:
发布于 2014-02-11 01:15:05
我可以使用yum shell
删除所有重复项
首先,我使用remove foo-package-*
run
指定事务的确切版本,命令它安装
在那之后,副本就消失了,我可以毫无问题地将系统更新到当前的包,也不会引入任何新的副本。
这甚至适用于像nss
或yum
这样的系统包。
https://stackoverflow.com/questions/19418301
复制相似问题