이 yum 업데이트 충돌을 해결하는 방법은 무엇입니까?

이 yum 업데이트 충돌을 해결하는 방법은 무엇입니까?

CentOS 8 서버의 패키지 업데이트에 대해 여러 가지 충돌하는 오류 메시지가 나타납니다 containers-common.runc

Yum 출력:

/root>yum update --nobest
Last metadata expiration check: 0:16:51 ago on Fri 24 Sep 2021 03:59:35 PM EDT.
Dependencies resolved.

 Problem: package containers-common-1:1.3.1-5.module_el8.4.0+886+c9a8d9ad.x86_64 requires runc, but none of the providers can be installed
  - package containerd.io-1.4.9-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.0-70.rc92.module_el8.4.0+673+eabfc99d.x86_64
  - installed package containerd.io-1.4.9-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.0-70.rc92.module_el8.4.0+673+eabfc99d.x86_64
  - package containerd.io-1.4.9-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.0-73.rc93.module_el8.4.0+830+8027e1c4.x86_64
  - installed package containerd.io-1.4.9-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.0-73.rc93.module_el8.4.0+830+8027e1c4.x86_64
  - package containerd.io-1.4.9-3.1.el8.x86_64 conflicts with runc provided by runc-1.0.0-74.rc95.module_el8.4.0+886+c9a8d9ad.x86_64
  - installed package containerd.io-1.4.9-3.1.el8.x86_64 obsoletes runc provided by runc-1.0.0-74.rc95.module_el8.4.0+886+c9a8d9ad.x86_64
  - cannot install the best update candidate for package containers-common-1:1.2.2-10.module_el8.4.0+830+8027e1c4.x86_64
  - cannot install the best update candidate for package containerd.io-1.4.9-3.1.el8.x86_64
  - package runc-1.0.0-56.rc5.dev.git2abd837.module_el8.3.0+569+1bada2e4.x86_64 is filtered out by modular filtering
  - package runc-1.0.0-64.rc10.module_el8.4.0+522+66908d0c.x86_64 is filtered out by modular filtering
  - package runc-1.0.0-65.rc10.module_el8.4.0+819+4afbd1d6.x86_64 is filtered out by modular filtering
  - package runc-1.0.0-70.rc92.module_el8.4.0+786+4668b267.x86_64 is filtered out by modular filtering
  - package runc-1.0.0-71.rc92.module_el8.4.0+833+9763146c.x86_64 is filtered out by modular filtering
================================================================================================================================
 Package                      Architecture      Version                                              Repository            Size
================================================================================================================================
Skipping packages with conflicts:
(add '--best --allowerasing' to command line to force their upgrade):
 runc                         x86_64            1.0.0-70.rc92.module_el8.4.0+673+eabfc99d            appstream            3.1 M
 runc                         x86_64            1.0.0-73.rc93.module_el8.4.0+830+8027e1c4            appstream            3.2 M
 runc                         x86_64            1.0.0-74.rc95.module_el8.4.0+886+c9a8d9ad            appstream            3.3 M
Skipping packages with broken dependencies:
 containers-common            x86_64            1:1.3.1-5.module_el8.4.0+886+c9a8d9ad                appstream             95 k

Transaction Summary
================================================================================================================================
Skip  4 Packages

Nothing to do.
Complete!
/root>

플래그를 사용하라는 제안을 시도했지만 --best --allowerasing일부 중요한 패키지를 제거하면 내 도커 환경이 손상될 수 있다는 제안이 나왔습니다.

/root>yum update containers-common --best --allowerasing
Last metadata expiration check: 0:30:49 ago on Fri 24 Sep 2021 03:59:35 PM EDT.
Dependencies resolved.
================================================================================================================================
 Package                          Architecture  Version                                          Repository                Size
================================================================================================================================
Upgrading:
 containers-common                x86_64        1:1.3.1-5.module_el8.4.0+886+c9a8d9ad            appstream                 95 k
Installing dependencies:
 runc                             x86_64        1.0.0-74.rc95.module_el8.4.0+886+c9a8d9ad        appstream                3.3 M
Removing dependent packages:
 containerd.io                    x86_64        1.4.9-3.1.el8                                    @docker-ce-stable        112 M
 docker-ce                        x86_64        3:20.10.8-3.el8                                  @docker-ce-stable         95 M
 docker-ce-rootless-extras        x86_64        20.10.8-3.el8                                    @docker-ce-stable         16 M

Transaction Summary
================================================================================================================================
Install  1 Package
Upgrade  1 Package
Remove   3 Packages

Total download size: 3.4 M
Is this ok [y/N]: N

이러한 패키지 업데이트 충돌에 대한 영구적인 해결책이 있습니까?

답변1

나는 같은 문제가 있었고 그것을 해결하는 유일한 방법은 이 명령을 실행하는 것이었습니다

dnf remove containers-common

y
메시지가 표시되면 " 이 패키지가 제거됩니다"를 클릭했습니다 .

Updating Subscription Management repositories.
Dependencies resolved.
=================================================================================================================================================================================
 Package                                  Architecture                  Version                                                          Repository                         Size
=================================================================================================================================================================================
Removing:
 containers-common                        x86_64                        1:1.2.2-10.module_el8.4.0+830+8027e1c4                           @appstream                        297 k
Removing dependent packages:
 skopeo                                   x86_64                        1:1.2.2-10.module_el8.4.0+830+8027e1c4                           @appstream                         23 M
Removing unused dependencies:
 crun                                     x86_64                        0.18-2.module_el8.4.0+830+8027e1c4                               @appstream                        470 k
 yajl                                     x86_64                        2.1.0-10.el8                                                     @appstream                         85 k

Transaction Summary
=================================================================================================================================================================================
Remove  4 Packages

그런 다음 다음을 실행하여 시스템을 성공적으로 업데이트할 수 있습니다.

dnf update -y

이 문제를 해결하기 위해 시도했지만 성공하지 못한 모든 방법은 다음과 같습니다.

이 전에 나는 성공적으로 달렸습니다.

dnf install runc

이것은 성공적이며 보여줍니다.

Updating Subscription Management repositories.
Last metadata expiration check: 1:02:03 ago on Thu 09 Dec 2021 12:18:35 AM EST.
Package containerd.io-1.4.9-3.1.el8.x86_64 is already installed.
Dependencies resolved.
=================================================================================================================================================================================
 Package                                    Architecture                        Version                                      Repository                                     Size
=================================================================================================================================================================================
Upgrading:
 containerd.io                              x86_64                              1.4.12-3.1.el8                               docker-ce-stable                               28 M

Transaction Summary
=================================================================================================================================================================================
Upgrade  1 Package

Total download size: 28 M
Is this ok [y/N]: y
Downloading Packages:
containerd.io-1.4.12-3.1.el8.x86_64.rpm                                                                                                           30 MB/s |  28 MB     00:00    
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                             30 MB/s |  28 MB     00:00     
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                                                                         1/1 
  Running scriptlet: containerd.io-1.4.12-3.1.el8.x86_64                                                                                                                     1/1 
  Upgrading        : containerd.io-1.4.12-3.1.el8.x86_64                                                                                                                     1/2 
  Running scriptlet: containerd.io-1.4.12-3.1.el8.x86_64                                                                                                                     1/2 
  Running scriptlet: containerd.io-1.4.9-3.1.el8.x86_64                                                                                                                      2/2 
  Cleanup          : containerd.io-1.4.9-3.1.el8.x86_64                                                                                                                      2/2 
  Running scriptlet: containerd.io-1.4.9-3.1.el8.x86_64                                                                                                                      2/2 
  Verifying        : containerd.io-1.4.12-3.1.el8.x86_64                                                                                                                     1/2 
  Verifying        : containerd.io-1.4.9-3.1.el8.x86_64                                                                                                                      2/2 
Installed products updated.
Last metadata expiration check: 1:02:27 ago on Thu 09 Dec 2021 12:18:35 AM EST.

Upgraded:
  containerd.io-1.4.12-3.1.el8.x86_64                                                                                                                                            

Complete!

도움이 되지 않아서 달렸어요

 yum update -y docker-ce

업데이트를 했지만 여전히 dnf update -y를 사용하여 동일한 오류가 발생한 다음 실행했습니다.

dnf update -y docker-ce-cli

이것도 업데이트되었지만 여전히 dnf update -y가 작동하지 않았습니다.

Updating Subscription Management repositories.
Last metadata expiration check: 1:05:35 ago on Thu 09 Dec 2021 12:18:35 AM EST.
Dependencies resolved.
=================================================================================================================================================================================
 Package                                Architecture                        Version                                          Repository                                     Size
=================================================================================================================================================================================
Upgrading:
 docker-ce                              x86_64                              3:20.10.11-3.el8                                 docker-ce-stable                               22 M

Transaction Summary
=================================================================================================================================================================================
Upgrade  1 Package

Total download size: 22 M
Downloading Packages:
docker-ce-20.10.11-3.el8.x86_64.rpm                                                                                                               31 MB/s |  22 MB     00:00    
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                             30 MB/s |  22 MB     00:00     
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                                                                         1/1 
  Running scriptlet: docker-ce-3:20.10.11-3.el8.x86_64                                                                                                                       1/1 
  Upgrading        : docker-ce-3:20.10.11-3.el8.x86_64                                                                                                                       1/2 
  Running scriptlet: docker-ce-3:20.10.11-3.el8.x86_64                                                                                                                       1/2 
  Running scriptlet: docker-ce-3:20.10.8-3.el8.x86_64                                                                                                                        2/2 
  Cleanup          : docker-ce-3:20.10.8-3.el8.x86_64                                                                                                                        2/2 
  Running scriptlet: docker-ce-3:20.10.8-3.el8.x86_64                                                                                                                        2/2 
  Verifying        : docker-ce-3:20.10.11-3.el8.x86_64                                                                                                                       1/2 
  Verifying        : docker-ce-3:20.10.8-3.el8.x86_64                                                                                                                        2/2 
Installed products updated.
Last metadata expiration check: 1:05:45 ago on Thu 09 Dec 2021 12:18:35 AM EST.

Upgraded:
  docker-ce-3:20.10.11-3.el8.x86_64                                                                                                                                              

Complete!

답변2

Podman 패키지를 제거하고 sudo yum autoremove사용되지 않는 종속 항목 복구를 실행하면 문제가 해결되었습니다.

관련 정보