| [問題]
 MIRACLE LINUX V3.0 for x86-64 における RPM の不具合[対象となる製品のバージョン]
MIRACLE LINUX V3.0 - Asianux Inside for x86-64
 [問題詳細]
MIRACLE LINUX V3.0 for x86-64 (以降 ML30-64) において、2006-01-16 に公開された rpm パッケージのアップデートを行った場合や、MIRACLE LINUX V3.0 SP2 for x86-64 (以降 SP2) を適用した場合に、RPM によるパッケージ管理に問題がでることがわかりました。
 
ML30-64 ご利用の場合、以下の手順に従ってシステムを復旧してください。
 [現象]
ML30-64 では rpm パッケージのアップデートとして、i386 版とx86-64 版の二種類のパッケージを同時に公開しています。
 
これらのパッケージを "rpm -Uvh" などで同時にアップデートすると、RPM のマクロファイルである /usr/lib/rpm/macros がx86-64 対応のファイルから i386 対応のものに上書きされてしまう不具合が発生します。
 
i386 対応のマクロファイルでは、違うアーキテクチャの同名パッケージ (例: glibc.i686 と glibc.x86_64) を一つのシステムに共存させることができなくなります。このため、32bit互換モードで 32bit バイナリを動かしたり、rpm パッケージのインストール・アップデートに失敗したりする問題があります。
 [確認方法]
修正が必要かどうかを判断するには、コマンドラインより以下のコマンドを実行してください。
 
 # rpm -q --qf "%{name}-%{version}-%{release}.%{arch}\n" rpm
 rpm-4.2.3-24_nonptl.2AX.x86_64
 rpm-4.2.3-24_nonptl.2AX.i386
もし rpm-4.2.3-24_nonptl.2AX.x86_64 のように、x86_64 版のパッケージのみ表示される場合は、特に対応する必要はありません。
 
例のように x86_64 版パッケージと i386 版パッケージの両方が表示される場合には、i386 パッケージを削除し、RPM のマクロファイル /usr/lib/rpm/macros を復元する必要があります。
 [修正方法]
自動スクリプトを下記の URL よりダウンロードして以下のコマンドを root ユーザで実行してください。
 
ダウンロード: ml30sp2_64_script.tar.gz
 
 # tar zxvf ml30sp2_64_script.tar.gz
 # cd ml30sp2_64_script
 # ./ml30sp2_64_check.sh
 Checking OS ...
 os:  MIRACLE LINUX V3.0 for x86-64
 Checking whether rpm.i386 package is installed or not...
 rpm.i386 found in the system.
 Deleting rpm.i386 ...
 Restoring /usr/lib/rpm/macros file ...
 Restored successfully.
 
上記のように出力されれば、作業は完了です。
 [更新履歴]
 2006年1月26日 新規作成
 |