web-dev-qa-db-ja.com

Fedora 30から31へのアップグレード:モジュール「ant」の複数のストリームを有効にできません

Fedora 30から31にアップグレードしようとしていますが、次の2つの手順を正常に完了しています。

dnf upgrade --refresh
dnf install dnf-plugin-system-upgrade

しかし、私が次のことをするとき:

dnf system-upgrade download --releasever=31

...私はこれを手に入れます:

Before you continue ensure that your system is fully upgraded by running "dnf --refresh upgrade". Do you want to continue [y/N]: y
Adobe Systems Incorporated                      35 kB/s | 2.9 kB     00:00    
Fedora Modular 31 - x86_64                      23 kB/s |  25 kB     00:01    
Fedora Modular 31 - x86_64 - Updates            19 kB/s |  16 kB     00:00    
Fedora 31 - x86_64 - Updates                    17 kB/s |  18 kB     00:01    
Fedora 31 - x86_64                              37 kB/s |  25 kB     00:00    
google-chrome                                   18 kB/s | 1.3 kB     00:00    
MariaDB                                        9.7 kB/s | 2.9 kB     00:00    
packages-Microsoft-com-prod                     16 kB/s | 3.0 kB     00:00    
PostgreSQL common RPMs for Fedora 31 - x86_64   11 kB/s | 3.0 kB     00:00    
PostgreSQL 12 for Fedora 31 - x86_64           3.3 kB/s | 3.8 kB     00:01    
RPM Fusion for Fedora 31 - Free - Updates       29 kB/s | 9.1 kB     00:00    
RPM Fusion for Fedora 31 - Free                 26 kB/s | 9.9 kB     00:00    
RPM Fusion for Fedora 31 - Nonfree - Updates    11 kB/s | 9.4 kB     00:00    
RPM Fusion for Fedora 31 - Nonfree              21 kB/s |  10 kB     00:00    
skype (stable)                                 6.6 kB/s | 2.9 kB     00:00    
teams                                          4.9 kB/s | 3.0 kB     00:00    
Fedora 31 - x86_64 - VirtualBox                247  B/s | 181  B     00:00    
Visual Studio Code                              19 kB/s | 3.0 kB     00:00    
Yarn Repository                                 25 kB/s | 2.9 kB     00:00    
terminate called after throwing an instance of 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
  what():  Cannot enable multiple streams for module 'ant'
Aborted (core dumped)

この問題を克服する方法はありますか?どんなアイデアでも大歓迎です。余分なパッケージリポジトリの一部を無効化/削除する必要があるかどうかは問題ありません。

6
dbdemon

それは本当に奇妙ですが、私もこの問題に遭遇し、これらのリポジトリを無効にする必要があることがわかりました。

  • Fedora-modular.repo
  • Fedora-updates-modular.repo
  • Fedora-updates-testing-modular.repo

@vonbrandと@dbdemonに感謝します。

2
gone43v3r

モジュラーリポジトリを無効にするためのダミーガイド

これが何を意味するのか正確には分かりませんでした dbdemonからのコメント

「Fedora Modular」リポジトリを無効にしなければならなかったようです。

少し検索すると、この記事 Fedora/RHEL 8 Modular Repositoryの使用方法 に関する記事が表示されます。

次の方法で、インストールしたモジュラーリポジトリを一覧表示できます。

dnf module list --enabled

私はこの出力を得ました:

Docker CE Stable - x86_64                        12 kB/s | 9.8 kB     00:00    
...
Fedora Modular 30 - x86_64
Name    Stream         Profiles    Summary                                      
gimp    2.10 [d][e]    default [d] GIMP                                         
                       , devel     
ripgrep latest [d][e]  default [d] Line oriented search tool using Rust's regex 
                                   library

Fedora Modular 30 - x86_64 - Updates
Name    Stream         Profiles    Summary                                      
fd-find rolling [d][e] default [d] Simple, fast and user-friendly alternative to
                                    find
gimp    2.10 [d][e]    default [d] GIMP                                         
                       , devel     
ripgrep latest [d][e]  default [d] Line oriented search tool using Rust's regex 
                                   library

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

注:末尾のビットは、インストールしたモジュールを示します。ただし、これらのモジュラーリポジトリを意図的にインストールしなかったとは確信していません。私はただ走ったSudo dnf install ripgrepそしてそれはモジュラーリポジトリをインストールしました。

だから私が持っているこのリストから、fd-findripgrepおよびgimpはモジュールとしてインストールされます。

次に、たとえばripgrepに対してこれらを無効にできます。

Sudo dnf module disable ripgrep

あなたがリストしたどのモジュールに対しても同じことをする必要があるだけです。

3つのモジュールを無効にしたら、Fedoraのアップグレードを問題なく実行できました。

Sudo dnf system-upgrade download --releasever=31
10
icc97

「ant」や「maven」などのモジュールに問題があり、モジュールの削除が機能しない場合は、次のコマンドでモジュールをリセットしてみてください。

「dnf module reset」、例:dnf module reset maven

これは「maven」モジュールで機能しましたが、同じエラー: 'libdnf :: ModulePackageContainer :: EnableMultipleStreamsException'のインスタンスをスローした後に終了が呼び出されましたwhat():モジュール 'maven'の複数のストリームを有効にできません

5
Cespues

https://bugzilla.redhat.com/show_bug.cgi?id=1811234 によると、問題のあるモジュールの無効化は機能しますが、アップグレード後にそれらを再度有効にすることを忘れないでください。そこに言及されているおそらくより簡単な解決策は:

Sudo dnf module reset '*'

次に、インストール中に次のように表示されます。

Enabling module streams:
 gimp                                          2.10                                                     
 maven                                         3.5                                                      
 meson                                         latest                                                   
 ninja                                         latest                                                   
 ripgrep                                       latest                                                   

私はそれがどのように機能するか完全には理解していませんが、 https://docs.fedoraproject.org/en-US/modularity/using-modules-switching-streams/ から、モジュールが持つことができるようです最大で1つの「ストリーム」が選択され、resetはその選択をクリアして、別のストリームを選択できるようにしますか?

標準のリポジトリでのみ試行し、他のリポジトリを1つずつ追加してください。最初に、より大きな/より一般的なもの(RPM Fusion)から始めます。ニッチなものほど悲しみを引き起こす可能性が高くなります。さらに、なぜPostgresリポジトリ?ディストリビューションのバージョンの何が問題になっていますか?確認してください本当に非配布物がすべて必要です。

1
vonbrand

次の手順を実行する必要があります。

1) @ icc97が言ったように、dnf module list --enabledコマンドを実行して次のようなものを取得します。

Fedora Modular 30 - x86_64 - Updates
Name                           Stream                               Profiles                                    Summary                                                                          
ant                            1.10 [d][e]                          default [d]                                 Java build tool                                                                  
fish                           3 [d][e]                             default [d]                                 Friendly interactive Shell                                                       
gimp                           2.10 [d][e]                          default [d], devel                          GIMP                                                                             
maven                          3.5 [d][e]                           default [d]                                 Java project management and project comprehension tool 
  1. 次に、Sudo dnf module reset gimp ant fish mavenを実行します(resetの部分の後に、上記の結果にリストされているものだけを入力しています)。

  2. dnf system-upgrade download --releasever=31コマンドを実行し、パッケージのリストがインストール用に表示されるのを待って、「y(es)」を選択してから、インストールを通常どおり続行します。 :)

それが役に立てば幸い。

0
NikolaS