2009-03-11 4 views
28

希望の短いバージョン:特定のパッケージがインストールされているマシン上にyumコマンドがありますか?そのパッケージが提供されているリポジトリはどれですか? (あるいは、インストールされていないパッケージを提供するレポジトリは何か)。私のリポジトリの中に特定のパッケージを提供していると教えてもらえますか?

背景が必要な場合の背景背景:私たちは、私たちが作成したyumリポジトリの迷路を持っています。私は特定のRPMパッケージがインストールされているマシンと、明らかに不十分なリポジトリが設定されている別のマシンがあるため、そのマシンに必要なパッケージをインストールすることができません。新しいマシンに必要最小限のリポジトリを追加する必要があります。あるマシンから別のマシンへリポジトリをショットガンすることはできません。そして、私はこれを再現可能にする必要があるので、外に出て、rpmをつかむことは選択肢ではありません。

答えて

30
yum list packagename 

これは、パッケージが出力の第3列にあるリポジトリを示します。

すでにインストールされているパッケージの場合は、3番目の列に「インストール済み」と表示されているため、動作しません。その場合は、たとえば次のようにすることができます。 "rpm -qi packagename"、通常Vendor、Packager、Build Hostタグは、パッケージがどのリポジトリに属する​​かを示します。また、パッケージのバージョン番号に追加されるいくつかのレポ記号には、かなり一般的です。

+0

アトミックレポユーザー:ベンダーは、アトミックRPMの空白ですが、 "ホストを構築する" 場合は、それはだ、 "アーケロン" であります原子から。 – johnorourke

23
repoquery -i {packagename} 

実際のレポ名と、yumが返す役に立たない「インストール済み」との比較ができます。 repoqueryはyum-utilsによって提供されています。

1

単一のパッケージには、あなたが気にパッケージの名前と$ PACKAGEを交換し

PACKAGE=ruby-enterprise 
repoquery --qf "%{repoid}" $PACKAGE 

でこれを見つけることができます。

あなたが気にリポジトリのIDで$ REPOを交換し

REPO=ruby-enterprise-opt 
repoquery --repoid=$REPO -a --qf "%{name}" | sort > repo_packages 
rpm -qa --qf "%{name}\n" | sort > installed_packages 
comm -1 -2 repo_packages installed_packages 

で特定のリポジトリから来たすべてのパッケージを見つけることができます。すべての有効なリポジトリのIDはyum repolistで確認できます。

10

yum -v searchを使用すると、パッケージが表示されるパッケージとそのパッケージが表示されます。--showduplicatesを追加すると、そのパッケージのすべてのバージョンが表示されます。

クレジット:http://www.spinics.net/linux/fedora/yum/msg11975.html

0
yum reinstall [package_name] 

確認するよう求められた場合次に、あなたのシステムを変更しないようにNを選択することができます:CentOSの上

出力例:

Resolving Dependencies 
--> Running transaction check 
---> Package mc.x86_64 1:4.6.1a-35.el5 set to be updated 
--> Finished Dependency Resolution 

Dependencies Resolved 

============================================================================================================================================== 
Package      Arch        Version         Repository      Size 
============================================================================================================================================== 
Reinstalling: 
mc       x86_64       1:4.6.1a-35.el5       base       2.1 M 

Transaction Summary 
============================================================================================================================================== 
Remove  0 Package(s) 
Reinstall  1 Package(s) 
Downgrade  0 Package(s) 

Total download size: 2.1 M 
Is this ok [y/N]: 
関連する問題