dnf:(何か)をインストールする必要がありますが、そうではありません!

dnf:(何か)をインストールする必要がありますが、そうではありません!

特定のパッケージのどこでもエラーが発生することがわかりましたが、私には適切な解決策が見つかりませんでした。

dnf install python2-qtconsole python2-jupyter-coreJupyterをインストールしようとしたときにpython2-urllib3をインストールしようとしたときにエラーが発生したことがわかったとき、すべてがクラッシュしました。今私がするたびに:dnf install python2-urllib3私は次のようになります:

Dependencies resolved.
========================================================================================================================================
 Package                              Arch                        Version                            Repository                    Size
========================================================================================================================================
Installing:
 python2-urllib3                      noarch                      1.22-3.fc27                        updates                      178 k

Transaction Summary
========================================================================================================================================
Install  1 Package

Total download size: 178 k
Installed size: 678 k
Is this ok [y/N]: y
Downloading Packages:
python2-urllib3-1.22-3.fc27.noarch.rpm                                                                   78 kB/s | 178 kB     00:02    
----------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                    53 kB/s | 178 kB     00:03     
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                                1/1 
  Installing       : python2-urllib3-1.22-3.fc27.noarch                                                                             1/1 
Error unpacking rpm package python2-urllib3-1.22-3.fc27.noarch
Error unpacking rpm package python2-urllib3-1.22-3.fc27.noarch
error: unpacking of archive failed on file /usr/lib/python2.7/site-packages/urllib3/packages/ssl_match_hostname: cpio: File from package already exists as a directory in system
python2-urllib3-1.22-3.fc27.noarch was supposed to be installed but is not!
  Verifying        : python2-urllib3-1.22-3.fc27.noarch                                                                             1/1 

Failed:
  python2-urllib3.noarch 1.22-3.fc27                                                                                                    

Error: Transaction failed

私はこれらすべてを試しました。

dnf clean all
yum clean all && rpm --rebuilddb
package-cleanup --problems
rpm -e python3-urllib3-1.22-3.fc27.noarch --nodeps
rpm -i python2-urllib3-1.22-3.fc27.noarch.rpm

...そしてすぐに精神を失っています...

答え1

問題は次のとおりです。

 cpio: File from package already exists as a directory in system

テストに使用しているFedora VMでは、次のパスは次のとおりです。

/usr/lib/python2.7/site-packages/urllib3/packages/ssl_match_hostname

実際にはディレクトリであり、インストールは成功しました。だから私の考えは、あなたがそのミラーから破損したパッケージをインポートしているということです。私はFedoraがダウンロードしたパッケージをチェックサムしたという印象を受けました。彼らがそうしたなら、その可能性はほとんどありません。以下でパッケージを確認できます。

rpm --verify $package_name

いくつかのアイデア:ミラー/etc/yum.repos.d/fedora-updates.repoセクション[updates] のコメントを変更し、metalink目的baseurlのミラーを提供します。baseurl後でリポジトリファイルを元の状態に復元できるように、その行をコピーしてコメントを削除することをお勧めします。

その後、再びdnf clean all、、を実行しますdnf check-updatednf reinstall ...有効なパッケージがあると確信していて、dnfが何もしない場合は、いくつかの追加オプションを試してくださいrpm --install。たとえば、問題はpython2バージョンではなくpython3バージョンにあることが--forceわかりました。しかし、それが問題かもしれません。rpm --erasedタイプミスが投稿されました。確認してください$ history。それがすべてです。これ以上ログは必要ありません。

関連情報