有一台 CentOS 6.x 的 Server,在一次更新中途失敗後,每次要更新時就出現如下的訊息:
selinux-policy-3.7.19-195.el6_4.12.noarch is a duplicate with selinux-policy-3.7.19-155.el6_3.14.noarch
setup-2.8.14-20.el6.noarch is a duplicate with setup-2.8.14-16.el6.noarch
sos-2.2-38.el6.centos.2.noarch is a duplicate with sos-2.2-29.el6.noarch
sssd-1.9.2-82.7.el6_4.x86_64 has installed conflicts selinux-policy < (‘0’, ‘3.7.19’, ‘160’): selinux-policy-3.7.19-155.el6_3.14.noarch
sssd-1.9.2-82.7.el6_4.x86_64 is a duplicate with sssd-1.8.0-32.el6.x86_64
sssd-client-1.9.2-82.7.el6_4.x86_64 is a duplicate with sssd-client-1.8.0-32.el6.x86_64
2:tar-1.23-11.el6.x86_64 is a duplicate with 2:tar-1.23-7.el6.x86_64
tzdata-2013c-2.el6.noarch is a duplicate with tzdata-2012j-1.el6.noarch
udev-147-2.46.el6.x86_64 is a duplicate with udev-147-2.42.el6.x86_64
upstart-0.6.5-12.el6_4.1.x86_64 is a duplicate with upstart-0.6.5-12.el6.x86_64
util-linux-ng-2.17.2-12.9.el6_4.3.x86_64 is a duplicate with util-linux-ng-2.17.2-12.7.el6_3.x86_64
看起來像是系統中,重複安裝了二個相同檔名的套件
# rpm -qa | grep samba
samba-common-3.5.10-125.el6.x86_64
samba-3.5.10-125.el6.x86_64
samba-common-3.6.9-151.el6.x86_64
samba4-libs-4.0.0-55.el6.rc4.x86_64
samba-winbind-clients-3.5.10-125.el6.x86_64
samba-winbind-3.6.9-151.el6.x86_64
samba-winbind-clients-3.6.9-151.el6.x86_64
samba-client-3.5.10-125.el6.x86_64
看起來似乎有 2xx 多個重覆的檔案,難道要一一刪除嗎?[@more@]在網路上搜尋了一下,終於找到解決的方案 – AWS 機器上 duplicated RPM 問題 | 小惡魔 – 電腦技術 – 工作筆記 – AppleBOY
解決方式:
1. 安裝 yum-utils 套件
# yum install yum-utils
2. 移除相同的多餘套件
# package-cleanup –cleandupes
Transaction Summary
================================================================================
Remove 229 Package(s)
Installed size: 611 M
Is this ok [y/N]:y
共有 229 個重覆的套件檔,如果要一一刪除,就會累死人了!
後記:
不過,建議在做相關移除的動作時,應先好備份的工作,因為我發現移除之後,它把我的 SSH / MySQL / SNMP Server 等等,全部都移除了,我又手動一一安裝回去,才讓 Server 可以正常運作。