web-dev-qa-db-ja.com

Yumは、パッケージがインストールされていて、インストールされておらず、他のパッケージのインストールをブロックしていると言います

新しいパッケージをインストールしようとしています(glibc-static)、次のエラーが表示されます

---> Package nss-softokn-freebl.i686 0:3.14.3-18.el6_6 will be installed
--> Finished Dependency Resolution
Error: Package: glibc-2.12-1.149.el6.i686 (CentOS-OS)
          Requires: glibc-common = 2.12-1.149.el6
          Installed: glibc-common-2.12-1.149.el6_6.5.x86_64 (@updates)
              glibc-common = 2.12-1.149.el6_6.5
          Available: glibc-common-2.12-1.149.el6.x86_64 (CentOS-OS)
              glibc-common = 2.12-1.149.el6
Error: Package: glibc-devel-2.12-1.149.el6.i686 (CentOS-OS)
          Requires: glibc-headers = 2.12-1.149.el6
          Installed: glibc-headers-2.12-1.149.el6_6.5.x86_64 (@updates)
              glibc-headers = 2.12-1.149.el6_6.5
          Available: glibc-headers-2.12-1.149.el6.x86_64 (CentOS-OS)
              glibc-headers = 2.12-1.149.el6
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

glibc-common-2.12-1.149.el6_6.5.x86_64およびglibc-common-2.12-1.149.el6.x86_64一致しません。だが glibc-common-2.12-1.149.el6_6.5.x86_64は利用可能と表示されています。 yumはそれを喜んでインストールすると思います。残念ながら、yumはそれをインストールしませんでした。

だから私は自分でやろうとした。

~ $> Sudo yum install glibc-common-2.12-1.149.el6
Loaded plugins: fastestmirror, presto
Setting up Install Process
Loading mirror speeds from cached hostfile
 * epel: mirror.us.leaseweb.net
Package matching glibc-common-2.12-1.149.el6.x86_64 already installed. Checking for update.
Nothing to do

それはうまくいきませんでした。既にインストールされているようです。

だから私はそれを再インストールしてみました。

~ $> Sudo yum reinstall glibc-common-2.12-1.149.el6
Loaded plugins: fastestmirror, presto
Setting up Reinstall Process
Loading mirror speeds from cached hostfile
No Match for argument: glibc-common-2.12-1.149.el6
Package(s) glibc-common-2.12-1.149.el6 available, but not installed.
Nothing to do

どうすればこれを解決できますか?

7
Alan C.

RPMデータベースをいじっても、特に良い結果は得られませんでした。

glibcパッケージの一部がi686と他の人はx86_64。例えば:

Package: glibc-2.12-1.149.el6.i686 (CentOS-OS)
    Requires: glibc-common = 2.12-1.149.el6
    Installed: glibc-common-2.12-1.149.el6_6.5.x86_64

気に入らなかったし、Yumも気に入らなかったと思います。

ランニング

yum downgrade glibc glibc-headers glibc-common glibc-devel

すべてのパッケージを同じアーキテクチャ(x86_64)。そして、

yum install glibc-static

魅力のように働いた。

6
Alan C.

RPM DBが混乱しています。以前にこれに遭遇したことのある私の推奨事項は、インストールされた新しい「複製」パッケージにrpm -e --justdb、次にパッケージにyum upgrade、次にrpm --rebuilddbです。最初の2つの手順を完了すると、リポジトリが正しく同期していることを前提として、新しいパッケージをインストールできるようになります。確実にyum clean allの直後にrpm -e --justdbを付けて、--justdbを指定するようにしてください。そうしないと、システムにあらゆる種類の悪いことを行う可能性があります。

6
John

Rpmsを手動でシステムにダウンロードすることで同様の問題を解決することができました(注:依存するすべてのrpmが必要です)、それらをフォルダーに保存して実行します。

yum localupdate /folderlocation/*.rpm

私の問題は、yumが指摘していたリポジトリからRPMを取得するときに不整合を見つけることに関係していました。症状はあなたが見ているものとまったく同じように提示されましたが、これもあなたのために働くかもしれません。

0
User52458