왜 업데이트를 설치하지 않습니까?


9

내가 오류를 얻고있다, 나는 생각 냠가 업데이트되지 않습니다로 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다음에 달리기를 시도했다 .

[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: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:Updating:패키지가 있는 테이블이 표시됩니다 .

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거기에도 약간의 문제가 있었다. __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

아마도 이것은 메모리와 관련이 있음을 암시합니다. 그렇다면 더 많은 RAM이 필요한 경우입니까 아니면 조사해야 할 다른 문제가 있습니까?


2
시스템 로그를 확인 했습니까? 메모리가 부족할 수 있습니다.
Michael Hampton

네, 방금 질문 (업데이트 3)을 메모리 정보로 업데이트했습니다. 정확하다고 생각합니다.
Leonard Challis

답변:


6

비슷한 문제와 내 수정. 메모리에도 문제가있어서 VPS의 메모리를 업그레이드해야했습니다. 그런 다음 yum 업데이트를 수행했습니다. 물론 위와 같은 오류가 발생했습니다. 따라서 실패한 부분을 살펴보면서 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!

-저녁을 먹다.


11

yum죽어가는 일반적인 이유 Killed는 시스템의 메모리가 부족하기 때문입니다.

로그에서 Amazon t1.micro 인스턴스 또는 비슷한 크기의 스왑 공간이없는 것처럼 보입니다. 이 제한된 양의 메모리는 많은 수의 패키지 설치 / 업데이트를 완료하기에 충분하지 않은 경우가 많습니다.

문제를 해결하려면 다음 중 하나를 수행하십시오.

  1. yum 트랜잭션을 완료하기에 충분한 메모리가 확보 될 때까지 실행중인 서비스를 종료하십시오.

    또는...

  2. 스왑 파일을 추가 하거나 임시 스토리지스왑 하여 인스턴스 추가하십시오 .

그런 다음 yum 거래를 완료 할 수 있어야합니다.


마지막으로, 이전에 실패한 업데이트에서 패키지 문제를 정리하려면

package-cleanup --cleandupes

다른 업데이트를 수행하기 전에


1
또한이 기회를 통해 메모리가 많고 일반적으로 빠르고 저렴한 t2.micro 인스턴스로 전환 할 수 있습니다.
Michael Hampton

감사합니다. httpd를 중지하는 데 걸리지 만 모두 제대로 작동했으며 나중에도 정리되었습니다.
레너드 Challis

2

시도 you update --skip-broken아마도, (나중에 그들과 거래를 할 수 있습니다)를 실행하는 것이 좋습니다 깨진 패키지를 건너 뛸 것 yum clean all아무것도하기 전에를.


1

인용하고 반쯤 지나간 외부 정보를 필터링하면 yum이미 도움이됩니다.

완료되지 않은 거래가 남아 있습니다. yum-complete-transaction완료하기 위해 먼저 달리기를 고려할 수 있습니다 . yum-complete-transaction 프로그램은 yum-utils 패키지에 있습니다.

벌써 해봤 어?


네, 실제로 했어요. 그것은 완료 할 수 없습니다 얘기하고 트랜잭션 파일 이름을 변경 한
레너드 Challis

문제가 발생할 때의 예와 함께 질문에 더 자세한 내용을 추가했습니다.
Leonard Challis

0

시도

yum 다운 그레이드 패키지 이름

이유는 확실하지 않지만 업데이트되거나 적어도 tcpdump 패키지로 나에게 적합합니다. 버전 tcpdump-4.5.1-2.el7.x86_64에서 tcpdump-4.7.4-1_ESG_ring.x86_64로갔습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.