x86_64システムにi386バージョンのソフトウェアをインストールする必要があるのはなぜですか?

x86_64システムにi386バージョンのソフトウェアをインストールする必要があるのはなぜですか?

CentOS 64ビットシステムにほとんどのソフトウェアのi386バージョンがx86_64バージョンでインストールされるのはなぜですか?

# yum install php-xml
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process    
Package php-xml-5.3.12-5.el5.art.x86_64 already installed and latest version    
Package php-xml-5.3.12-5.el5.art.i386 already installed and latest version    
Nothing to do

答え1

CentOSではよくある質問(FAQ)に答えてくださいこれに関するページには、32ビットと互換性があるという内容が記載されています。

exclude = *.i?86この問題を解決するには、yum.confに追加することが答えです。ただし、i386 rpmをインストールした場合はアップデートが中断されるため、この作業を実行する前に必ずアンインストールしてください。

私は設定を好むので、multilib_policy=best32ビットが必要な奇妙な場合にはインストールされますが、デフォルトではインストールされません。

multilib_policy - 「all」または「best」に設定できます。すべては、インストールするパッケージに可能なすべてのアーキテクチャをインストールすることを意味します。したがって、yum install fooはx86_64にfoo.i386をインストールし、可能であればfoo.x86_64をインストールします。最高は、このプラットフォームに最適なアーチのみをインストールすることを意味します。

答え2

互換性のためです。これらのパッケージは、64ビットシステムで32ビットソフトウェアを実行するために必要です。

答え3

この動作を望まない場合はインストールpackage.x86_64する必要があります。ほとんどのi386パッケージはまだ32ビットプログラム(Firefoxなど)への特定の依存関係を満たす必要があるためです。

関連情報