CentOS 8ストリームモジュールインストールパッケージの競合

CentOS 8ストリームモジュールインストールパッケージの競合

redhat-lsbパッケージをインストールしようとしています。これにより、そのターゲットマシンに対してAnsibleを実行すると、より多くの事実を収集できます。

redhat-lsbをインストールしようとすると、次の結果が表示されます。

yum install redhat-lsb
Last metadata expiration check: 0:05:12 ago on Thu 02 Jun 2022 08:19:04 PM UTC.
Error: 
 Problem: package redhat-lsb-4.1-47.el8.x86_64 requires redhat-lsb-languages = 4.1-47.el8, but none of the providers can be installed
  - package redhat-lsb-languages-4.1-47.el8.i686 requires perl(Fatal), but none of the providers can be installed
  - package redhat-lsb-languages-4.1-47.el8.x86_64 requires perl(Fatal), but none of the providers can be installed
  - conflicting requests
  - package perl-autodie-2.34-1.module_el8.6.0+1070+343f8e3c.noarch is filtered out by modular filtering
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

perl-autodieに問題があるようです。次に、「yum module presents perl-autodie」コマンドを実行します。結果は次のとおりです。

yum module provides perl-autodie
Last metadata expiration check: 0:11:38 ago on Thu 02 Jun 2022 08:19:04 PM UTC.
perl-autodie-2.34-1.module_el8.6.0+1070+343f8e3c.noarch
Module   : perl:5.32:8060020220119032749:e82d91b1:x86_64
Profiles : 
Repo     : centos8-stream-appstream
Summary  : Practical Extraction and Report Language

結果によると、perl-autodieはperl:5.32モジュールで利用可能です。次に、「yum moduleを有効にするperl:5.32」コマンドを使用してperl:5.32モジュールを有効にし、「yum module list perl」を使用して結果を確認しました。結果は次のとおりです。

# yum module enable perl:5.32
Last metadata expiration check: 0:13:06 ago on Thu 02 Jun 2022 08:19:04 PM UTC.
Problems in request:
Modular dependency problems with Defaults:

 Problem: module perl:5.26:8000020190628020724:55190bc5.x86_64 conflicts with module(perl:5.32) provided by perl:5.32:8060020220119032749:e82d91b1.x86_64
  - module perl:5.32:8060020220119032749:e82d91b1.x86_64 conflicts with module(perl:5.26) provided by perl:5.26:8000020190628020724:55190bc5.x86_64
  - module freeradius:3.0:8030020200831192931:1e4bbb35.x86_64 requires module(perl:5.26), but none of the providers can be installed
  - conflicting requests
Dependencies resolved.
============================================================================================================================================
 Package                          Architecture                    Version                            Repository                        Size
============================================================================================================================================
Enabling module streams:
 perl                                                             5.32                                                                     

Transaction Summary
============================================================================================================================================

Is this ok [y/N]: y
Complete!
# yum module list perl
Last metadata expiration check: 0:13:21 ago on Thu 02 Jun 2022 08:19:04 PM UTC.
Modular dependency problem:

 Problem: module perl:5.26:8000020190628020724:55190bc5.x86_64 conflicts with module(perl:5.32) provided by perl:5.32:8060020220119032749:e82d91b1.x86_64
  - module perl:5.32:8060020220119032749:e82d91b1.x86_64 conflicts with module(perl:5.26) provided by perl:5.26:8000020190628020724:55190bc5.x86_64
  - module freeradius:3.0:8030020200831192931:1e4bbb35.x86_64 requires module(perl:5.26), but none of the providers can be installed
  - conflicting requests
CentOS-Stream 8 AppStream
Name                  Stream                    Profiles                            Summary                                                 
perl                  5.24                      common [d], minimal                 Practical Extraction and Report Language                
perl                  5.26 [d]                  common [d], minimal                 Practical Extraction and Report Language                
perl                  5.30                      common [d], minimal                 Practical Extraction and Report Language                
perl                  5.32 [e]                  common [d], minimal                 Practical Extraction and Report Language                

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

これで、perl:5.26がまだデフォルトであり、perl:5.32が有効になっていることがわかります。 perl:5.32を有効にすると、perl-autodieの依存関係が満たされて利用可能であると仮定できます。今redhat-lsbをインストールしようとすると、次の結果が表示されます。

# yum install redhat-lsb
Last metadata expiration check: 0:16:42 ago on Thu 02 Jun 2022 08:19:04 PM UTC.
Modular dependency problem:

 Problem: module perl:5.26:8000020190628020724:55190bc5.x86_64 conflicts with module(perl:5.32) provided by perl:5.32:8060020220119032749:e82d91b1.x86_64
  - module perl:5.32:8060020220119032749:e82d91b1.x86_64 conflicts with module(perl:5.26) provided by perl:5.26:8000020190628020724:55190bc5.x86_64
  - module freeradius:3.0:8030020200831192931:1e4bbb35.x86_64 requires module(perl:5.26), but none of the providers can be installed
  - conflicting requests
Error: 
 Problem: package redhat-lsb-core-4.1-47.el8.x86_64 requires /usr/bin/lp, but none of the providers can be installed
  - package redhat-lsb-core-4.1-47.el8.x86_64 requires /usr/bin/lpr, but none of the providers can be installed
  - package redhat-lsb-4.1-47.el8.x86_64 requires redhat-lsb-core(x86-64) = 4.1-47.el8, but none of the providers can be installed
  - package cups-client-1:2.2.6-46.el8.x86_64 requires cups-libs(x86-64) = 1:2.2.6-46.el8, but none of the providers can be installed
  - conflicting requests
  - package cups-libs-1:2.2.6-46.el8.x86_64 is filtered out by exclude filtering
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

freeradiusモジュールはperl:5.26モジュールに依存しているようですが、perl:5.32モジュールが有効になっているモジュールです。 freeradiusは必要ないので「yum module Remove freeradius:3.0:8030020200831192931:1e4bbb35.x86_64」で削除してみましょう。

Last metadata expiration check: 0:20:09 ago on Thu 02 Jun 2022 08:19:04 PM UTC.
Modular dependency problem:

 Problem: module perl:5.26:8000020190628020724:55190bc5.x86_64 conflicts with module(perl:5.32) provided by perl:5.32:8060020220119032749:e82d91b1.x86_64
  - module perl:5.32:8060020220119032749:e82d91b1.x86_64 conflicts with module(perl:5.26) provided by perl:5.26:8000020190628020724:55190bc5.x86_64
  - module freeradius:3.0:8030020200831192931:1e4bbb35.x86_64 requires module(perl:5.26), but none of the providers can be installed
  - conflicting requests
Problems in request:
missing groups or modules: freeradius:3.0:8030020200831192931:1e4bbb35.x86_64
Dependencies resolved.
Nothing to do.
Complete!

私はappstreamモジュラーリポジトリの地獄に完全に閉じ込められています。私がしたいのはredhat-lsbをインストールするだけです。この時点で止まって助けを求めています。どんなアドバイスもよろしくお願いします。

答え1

ランニングはyum distro-syncトリックを実行する必要があります。

関連情報