web-dev-qa-db-ja.com

yumはpythonがインストールされていません

Collectdをインストールしようとしていますが、何らかの理由でpythonがインストールされていません:

yum install collectd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package collectd.i386 0:4.10.0-4.el5 set to be updated
--> Processing Dependency: libxml2.so.2 for package: collectd
--> Processing Dependency: libcurl.so.3 for package: collectd
--> Processing Dependency: libpython2.4.so.1.0 for package: collectd
--> Processing Dependency: libidn.so.11 for package: collectd
---> Package collectd.x86_64 0:4.10.0-4.el5 set to be updated
--> Running transaction check
---> Package collectd.i386 0:4.10.0-4.el5 set to be updated
--> Processing Dependency: libpython2.4.so.1.0 for package: collectd
---> Package curl.i386 0:7.15.5-9.el5 set to be updated
---> Package libidn.i386 0:0.6.5-1.1 set to be updated
---> Package libxml2.i386 0:2.6.26-2.1.2.8 set to be updated
--> Finished Dependency Resolution
collectd-4.10.0-4.el5.i386 from epel has depsolving problems
  --> Missing Dependency: libpython2.4.so.1.0 is needed by package collectd-4.10.0-4.el5.i386 (epel)
Error: Missing Dependency: libpython2.4.so.1.0 is needed by package collectd-4.10.0-4.el5.i386 (epel)
 You could try using --skip-broken to work around the problem
 You could try running: package-cleanup --problems
                        package-cleanup --dupes
                        rpm -Va --nofiles --nodigest
[root@vitlinpup001 templates]# find / -iname "libpython2.4.so.1.0" -type f
/usr/lib64/libpython2.4.so.1.0
[root@vitlinpup001 templates]# file /usr/lib64/libpython2.4.so.1.0
/usr/lib64/libpython2.4.so.1.0: ELF 64-bit LSB shared object, AMD x86-64, version 1 (SYSV), stripped
[root@vitlinpup001 templates]# ls -lah /usr/lib64/libpython2.4.so.1.0
-r-xr-xr-x 1 root root 1.2M Sep  3  2009 /usr/lib64/libpython2.4.so.1.0
[root@vitlinpup001 templates]# yum info python | grep installed
Repo       : installed

package-cleanup --problemspackage-cleanup --dupes、およびrpm -Va --nofiles --nodigestを実行しようとしました。

これは、依存関係の欠落に関する私にとって最初のタイマーであるため、続行する方法に少し迷っています。

4
tore-

出力を読み間違えています。 Pythonの32ビットライブラリがないということですが、これは正しいです。代わりにcollectd.x86_64をインストールしてみてください。

これは、EPELでのcollectdの問題のようです。 x86_64リポジトリには、64ビットと32ビットの両方のパッケージがあるようです。これは明らかに壊れています。

Kisokuが述べたようにexclude = collectd.i386を/etc/yum.confに追加することは、yum install collectdを「正常に機能させる」場合は、EPELが修正されるまでおそらく最善の解決策です。

1
johnf

複数のパッケージが利用可能な場合は、マシンアーキテクチャに一致するパッケージを優先するようにYumに指示できます。yum.confで次のように設定します。

multilib_policy=best

これは、コア機能として以前のyum-basearchonlyプラグインを置き換えます。これは、Fedora9およびRHEL6以降のデフォルトの動作です。

0
Dan Carley

これに対する別の回避策は、/ etc /yum.confに次の行を追加することです。

exclude = collectd.i386

0
kisoku