x86_64 環境で i386 の RPM を削除する

2007-9-23 07:00

CentOS 5 の x86_64 版を入れていろいろやっていたら、いつのまにか i386 のパッケージが紛れていて、しかも依存関係の解決のために Gnome とか libxx など 100 近いパッケージが入ってしまっていました。rpm コマンドで一覧を表示させると次のように同じパッケージが複数表示される状態になっています。

$ rpm -qa | sort | more
GConf2-2.14.0-9.el5
GConf2-2.14.0-9.el5
ImageMagick-6.2.8.0-3.el5.4
ImageMagick-6.2.8.0-3.el5.4
MAKEDEV-3.23-1.2
NetworkManager-0.6.4-6.el5
NetworkManager-glib-0.6.4-6.el5
NetworkManager-glib-0.6.4-6.el5
NetworkManager-gnome-0.6.4-6.el5
ORBit2-2.14.3-4.el5
ORBit2-2.14.3-4.el5
PyXML-0.8.4-4
SDL-1.2.10-8.el5
SDL-1.2.10-8.el5
SDL-devel-1.2.10-8.el5
SDL-devel-1.2.10-8.el5
……

重って表示されるのは片方が x86_64 でもう片方が i386 (i686) です。

i386 の方だけ狙って消すには

# rpm -e GConf2-2.14.0-9.el5.i386

のように パッケージ名とバージョンのあとに i386 (または i686) までつけて消せばよいのですが、依存関係もあるので大変です。そこで、rpm -qf でフォーマットを指定して xargs を使って一気に消せないか試したところうまくいきました。

# rpm -qa --qf "%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n" | grep i[36]86 | xargs rpm -e
  • ブックマーク : add to hatena hatena.comment (2) add to del.icio.us (1) add to livedoor.clip (0) add to Yahoo!Bookmark (0) Total: 3 アクセス: 2144回
  • カテゴリー : Linux
  • タグ : and
  • トラックバック URL :

1 件のコメント

  1. (thumbnail)

    libsvg2 と scim-bridge-gtk の RP…

    x86_64 環境で i386 の RPM を削除する の方法で、以下のようなエラーが発生した x86_64 のサーバ (CentOS 5) がありました。
    (more…)

    トラックバック by futuremix2007-10-1 23:01

このコメント欄の RSS フィード トラックバック URL

コメントフォームは現在閉鎖中です。

46 queries. HTML convert time: 7.111 sec. Powered by WordPress ME. Valid XHTML
Copyright © 2003-2008 @ futuremix.org | 5jp.net ログイン