我得到的错误,我认为与coreutils,百胜不会更新。 这是从我看到当我运行yum update时的精简输出:
Resolving Dependencies There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them. The program yum-complete-transaction is found in the yum-utils package. --> Running transaction check ---> Package PyYAML.x86_64 0:3.10-3.el6 will be updated ---> Package PyYAML.x86_64 0:3.10-3.1.el6 will be an update ... more of the same, and then: --> Processing Dependency: coreutils = 8.4-31.el6_5.2 for package: coreutils-libs-8.4-31.el6_5.2.x86_64 ---> Package coreutils.x86_64 0:8.4-37.el6 will be an update ... then more of the same --> Finished Dependency Resolution --> Running transaction check ---> Package coreutils.x86_64 0:8.4-31.el6_5.2 will be updated --> Processing Dependency: coreutils = 8.4-31.el6_5.2 for package: coreutils-libs-8.4-31.el6_5.2.x86_64 ---> Package kernel.x86_64 0:2.6.32-431.17.1.el6 will be erased --> Finished Dependency Resolution Error: Package: coreutils-libs-8.4-31.el6_5.2.x86_64 (@updates) Requires: coreutils = 8.4-31.el6_5.2 Removing: coreutils-8.4-31.el6_5.2.x86_64 (@updates) coreutils = 8.4-31.el6_5.2 Updated By: coreutils-8.4-37.el6.x86_64 (base) coreutils = 8.4-37.el6 You could try using --skip-broken to work around the problem ** Found 71 pre-existing rpmdb problem(s), 'yum check' output follows: audit-libs-2.3.7-5.el6.x86_64 is a duplicate with audit-libs-2.2-4.el6_5.x86_64 audit-libs-python-2.3.7-5.el6.x86_64 is a duplicate with audit-libs-python-2.2-4.el6_5.x86_64 ... then lots more like the above duplicate
我有另一台服务器(几乎)相同(他们是负载平衡和工作从相同的图像),并没有得到这个相同的问题。 什么可能是问题,我应该如何最好地进行?
更新:
我也运行了失败的yum-complete-transaction ,并表示它已经重命名了交易文件。 它仍然说有一个不完整的交易,但是现在,当我运行它时,会发生这种情况:
[root@nico ~]# yum-complete-transaction Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * webtatic: uk.repo.webtatic.com drivesrvr | 951 B 00:00 There are 1 outstanding transactions to complete. Finishing the most recent one The remaining transaction had 252 elements left to run ... lots of: Package name-1.23.x8x_64 already installed and latest version ... --> Running transaction check ... lots of entries like this: ---> Package PyYAML.x86_64 0:3.10-3.el6 will be updated ... and this: ---> Package PyYAML.x86_64 0:3.10-3.1.el6 will be an update ... and this: ---> Package audit-libs.x86_64 0:2.2-4.el6_5 will be erased Killed
然后突然停下来, Killed 。
我试着运行yum update --skip-broken next:
[root@nico ~]# yum update --skip-broken Freeing read locks for locker 0x7d: 28940/139976145426176 Freeing read locks for locker 0x7f: 28940/139976145426176 Freeing read locks for locker 0x80: 28940/139976145426176 Freeing read locks for locker 0x81: 28940/139976145426176 Freeing read locks for locker 0x82: 28940/139976145426176 Loaded plugins: downloadonly, fastestmirror, replace Setting up Update Process Loading mirror speeds from cached hostfile * webtatic: uk.repo.webtatic.com drivesrvr | 951 B 00:00 Resolving Dependencies There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them. --> Running transaction check ... lots of will be updated/will be an update/etc, then: --> Processing Dependency: coreutils = 8.4-31.el6_5.2 for package: coreutils-libs-8.4-31.el6_5.2.x86_64
然后几个Running transaction check: s,和Processing Dependency: coreutils =...条目之间更多的willy be updated/willbe an update条目。 然后:
Packages skipped because of dependency problems: coreutils-8.4-37.el6.x86_64 from base Dependencies Resolved
然后我会看到一张表,其中包含“ Installing: and Updating: packages”列表,最后有一个摘要:
Install 2 Package(s) Upgrade 79 Package(s) Remove 1 Package(s)
然后下载所有包(81/81成功),最后显示这个:
Total 3.0 MB/s | 115 MB 00:37 Running rpm_check_debug Killed
更新2:
我也跑了yum clean all ,也有一些问题。 我发现一些build议删除__db*文件,然后再试一次:
[root@nico ~]# yum clean all rpmdb: Thread/process 29404/139880514733824 failed: Thread died in Berkeley DB library error: db3 error(-30974) from dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery error: cannot open Packages index using db3 - (-30974) error: cannot open Packages database in /var/lib/rpm CRITICAL:yum.main: Error: rpmdb open failed [root@nico ~]# rm -f /var/lib/rpm/__db* [root@nico ~]# yum clean all Loaded plugins: downloadonly, fastestmirror, replace Cleaning repos: base drivesrvr epel extras ius newrelic percona-release-noarch percona-release-x86_64 rackspace updates webtatic Cleaning up Everything Cleaning up list of fastest mirrors [root@nico ~]# yum clean all Loaded plugins: downloadonly, fastestmirror, replace Cleaning repos: base drivesrvr epel extras ius newrelic percona-release-noarch percona-release-x86_64 rackspace updates webtatic Cleaning up Everything [root@nico ~]#
更新3:
我尾巴/var/log/messages ,看到了很多输出,当我运行yum-complete-transaction ,最后两行是:
Nov 14 08:19:47 nico kernel: Out of memory: Kill process 30995 (yum-complete-tr) score 149 or sacrifice child Nov 14 08:19:47 nico kernel: Killed process 30995, UID 0, (yum-complete-tr) total-vm:641952kB, anon-rss:181420kB, file-rss:4kB
所以可以推测这是与记忆有关的。 如果是这样,这是需要更多的内存的情况下,还是可能有另一个问题,我需要调查?
类似的问题 – 我的修复。 我也有内存问题,所以不得不升级VPS的内存。 然后我做了一个百胜更新 – 当然得到了上面的错误。 所以看着失败的,注意到Yum安装了(开始安装)最新的coreutils – 版本37,而我仍然有31位。所以首先,删除版本37,然后清理,然后运行yum更新再次。
这导致了“31”版本可以被“更新”干净。 看到下面的工作:
--> Running transaction check ---> Package coreutils.x86_64 0:8.4-31.el6_5.2 will be updated --> Processing Dependency: coreutils = 8.4-31.el6_5.2 for package: coreutils-libs-8.4-31.el6_5.2.x86_64 ---> Package coreutils.x86_64 0:8.4-37.el6 will be an update --> Finished Dependency Resolution Error: Package: coreutils-libs-8.4-31.el6_5.2.x86_64 (@updates) Requires: coreutils = 8.4-31.el6_5.2 Removing: coreutils-8.4-31.el6_5.2.x86_64 (@updates) coreutils = 8.4-31.el6_5.2 Updated By: coreutils-8.4-37.el6.x86_64 (base) coreutils = 8.4-37.el6 You could try using --skip-broken to work around the problem
运行yum remove coreutils-libs-8.4-37.el6.x86_64 :
Loaded plugins: fastestmirror Setting up Remove Process Resolving Dependencies --> Running transaction check ---> Package coreutils-libs.x86_64 0:8.4-37.el6 will be erased --> Finished Dependency Resolution Dependencies Resolved ============================== ======================================================================================== Package Arch Version Repository Size ====================================================================================================================== Removing: coreutils-libs x86_64 8.4-37.el6 installed 5.4 k Transaction Summary ====================================================================================================================== Remove 1 Package(s) Installed size: 5.4 k Is this ok [y/N]: y Downloading Packages: Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Erasing : coreutils-libs-8.4-37.el6.x86_64 1/1 Verifying : coreutils-libs-8.4-37.el6.x86_64 1/1 Removed: coreutils-libs.x86_64 0:8.4-37.el6 Complete!
清理使用yum clean all :
Loaded plugins: fastestmirror Cleaning repos: base extras updates Cleaning up Everything Cleaning up list of fastest mirrors
做包列表刷新yum update :
Loaded plugins: fastestmirror Setting up Update Process Determining fastest mirrors * base: mirrors.lga7.us.voxel.net * extras: mirrors.lga7.us.voxel.net * updates: mirror.cc.columbia.edu base | 3.7 kB 00:00 base/primary_db | 4.6 MB 00:00 extras | 3.4 kB 00:00 extras/primary_db | 30 kB 00:00 updates | 3.4 kB 00:00 updates/primary_db | 1.5 MB 00:00 Resolving Dependencies --> Running transaction check ---> Package coreutils.x86_64 0:8.4-31.el6_5.2 will be updated ---> Package coreutils.x86_64 0:8.4-37.el6 will be an update ---> Package coreutils-libs.x86_64 0:8.4-31.el6_5.2 will be updated ---> Package coreutils-libs.x86_64 0:8.4-37.el6 will be an update --> Finished Dependency Resolution Dependencies Resolved ====================================================================================================================== Package Arch Version Repository Size ====================================================================================================================== Updating: coreutils x86_64 8.4-37.el6 base 3.0 M coreutils-libs x86_64 8.4-37.el6 base 50 k Transaction Summary ====================================================================================================================== Upgrade 2 Package(s) Total download size: 3.1 M Is this ok [y/N]: y Downloading Packages: (1/2): coreutils-8.4-37.el6.x86_64.rpm | 3.0 MB 00:00 (2/2): coreutils-libs-8.4-37.el6.x86_64.rpm | 50 kB 00:00 ---------------------------------------------------------------------------------------------------------------------- Total 44 MB/s | 3.1 MB 00:00 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Updating : coreutils-libs-8.4-37.el6.x86_64 1/4 Updating : coreutils-8.4-37.el6.x86_64 2/4 Cleanup : coreutils-libs-8.4-31.el6_5.2.x86_64 3/4 Cleanup : coreutils-8.4-31.el6_5.2.x86_64 4/4 Verifying : coreutils-8.4-37.el6.x86_64 1/4 Verifying : coreutils-libs-8.4-37.el6.x86_64 2/4 Verifying : coreutils-libs-8.4-31.el6_5.2.x86_64 3/4 Verifying : coreutils-8.4-31.el6_5.2.x86_64 4/4 Updated: coreutils.x86_64 0:8.4-37.el6 coreutils-libs.x86_64 0:8.4-37.el6 Complete!
-Sup。
yum与Killed死亡的通常原因是系统内存不足。
从你的日志看起来你有一个Amazon t1.micro实例,或者类似大小的东西,没有任何交换空间。 这个限制的内存量往往不足以完成大量的软件包安装/更新。
要解决这个问题,可以:
closures正在运行的服务,直到有足够的内存来完成yum事务。
要么…
将 临时存储上 的交换文件或交换 添加到您的实例。
那么你应该能够完成你的百胜交易。
最后,要清理以前的失败更新中的软件包问题,请尝试
package-cleanup --cleandupes
在执行任何其他更新之前。
过滤出你所引用的无关信息,并通过yum一半已经试图帮助你:
还有未完成的交易。 您可能会考虑首先运行
yum-complete-transaction来完成它们。 程序yum-complete-transaction在yum-utils包中find。
你已经试过了吗?
尝试you update --skip-broken会跳过破损的包(以后可以处理它们),在做任何事情之前运行yum clean all可能是个好主意。
尝试一下
百胜降级软件包名称
不知道为什么,但它更新,或至less它为我做了tcpdump包。 从版本tcpdump-4.5.1-2.el7.x86_64到tcpdump-4.7.4-1_ESG_ring.x86_64这正是我想要的。