在网上查看了yum update引起错误Transaction Check Error的情况可能有多种,我这里只讲述我遇到的情况:
在我执行yum update时的报错信息如下:
Running Transaction Test
Transaction Check Error:
file /usr/share/locale/en/LC_MESSAGES/systemtap.mo from install of systemtap-2.7-2.el6.x86_64 conflicts with file from package systemtap-client-2.5-5.el6.x86_64
file /usr/share/locale/fr/LC_MESSAGES/systemtap.mo from install of systemtap-2.7-2.el6.x86_64 conflicts with file from package systemtap-client-2.5-5.el6.x86_64
file /usr/share/locale/pl/LC_MESSAGES/systemtap.mo from install of systemtap-2.7-2.el6.x86_64 conflicts with file from package systemtap-client-2.5-5.el6.x86_64
file /usr/share/locale/en/LC_MESSAGES/systemtap.mo from install of systemtap-2.7-2.el6.x86_64 conflicts with file from package systemtap-devel-2.5-5.el6.x86_64
file /usr/share/locale/fr/LC_MESSAGES/systemtap.mo from install of systemtap-2.7-2.el6.x86_64 conflicts with file from package systemtap-devel-2.5-5.el6.x86_64
file /usr/share/locale/pl/LC_MESSAGES/systemtap.mo from install of systemtap-2.7-2.el6.x86_64 conflicts with file from package systemtap-devel-2.5-5.el6.x86_64
file /usr/share/locale/en/LC_MESSAGES/systemtap.mo from install of systemtap-2.7-2.el6.x86_64 conflicts with file from package systemtap-runtime-2.5-5.el6.x86_64
file /usr/share/locale/fr/LC_MESSAGES/systemtap.mo from install of systemtap-2.7-2.el6.x86_64 conflicts with file from package systemtap-runtime-2.5-5.el6.x86_64
file /usr/share/locale/pl/LC_MESSAGES/systemtap.mo from install of systemtap-2.7-2.el6.x86_64 conflicts with file from package systemtap-runtime-2.5-5.el6.x86_64
Error Summary
在网上搜索,有人建议把引起错误的package先删掉,所以我systemtap这个包,然后yum update,成功了.但这不是根本解决问题的,因为我必须要把卸载的包再安装上,很不幸,当我执行yum install systemtap时仍然出现了上面的错误,这时仔细看出错信息发现有两个版本,然后解决和查看的方式如下:
1) 按照错误提示我先查看了 systemtap-client :
rpm -q systemtap-client --qf '%{NAME} %{VERSION} %{ARCH}'
执行的结果是:
systemtap-client 2.5 x86_64 systemtap-client 2.7 x86_64
发现确实安装了两个版本的....
2) 卸载
执行命令:
rpm -e --allmatches systemtap-client
报错了: error: "systemtap-client" specifies multiple packages:
systemtap-client-2.5-5.el6.x86_64
systemtap-client-2.7-2.el6.x86_64
再在网上搜索一下错误错误解决方式,我是按照 该链接 文章的解决方式,卸载时带上参数,执行一下命令:
rpm -e --allmatches systemtap-client
卸载成功了,然后把冲突的包都卸载掉,然后重新yum install systemtap,安装成功.
其实原则上不用这么麻烦,可以在一开始就卸载掉冲突的包,然后直接yum update就可以了,而不用先卸载,再安装的方式.