ここでの「質問」は、/bin/lvcreate やライブラリ ファイルなどの特定のバイナリを提供する rpm パッケージを見つけることです。ファイルから rpm パッケージを見つけるのに役立つ 2 つのコマンド (rpm と yum) があります。 rpm コマンドを使用して、パッケージに含まれるすべてのファイルを見つけることもできます。
特定のバイナリ ファイルまたはライブラリ ファイルを提供する rpm パッケージを見つける 1.方法 1 :rpm コマンドを使用する
1. 以下の rpm コマンドを使用して、特定のファイルを提供する rpm パッケージを見つけます。
# rpm -q --whatprovides [file name]
たとえば、/etc/hosts ファイルを提供する rpm パッケージを見つけるには、次のコマンドを使用します。
# rpm -q --whatprovides /etc/hosts setup-2.8.14-23.el6.noarch
ライブラリ ファイル /usr/lib/gcc/x86_64-redhat-linux/4.4.4/libgomp.so を提供する rpm パッケージを見つけるには、次のコマンドを使用します。
# rpm -qf /usr/lib/gcc/x86_64-redhat-linux/4.4.4/libgomp.so gcc-4.4.7-18.el6.x86_64
同様に、以下のコマンドも同様に使用できます。
# rpm -qf [file name]
たとえば、
# rpm -qf /etc/hosts setup-2.8.14-23.el6.noarch
方法 2 :yum コマンドを使用する
以下の yum コマンドは、ファイル名を所有/提供するパッケージを提供します。 yum を使用するには、システムを RHN または適切なリポジトリに登録する必要があります。
# yum whatprovides [file_name]
例:
次のコマンドを使用して、特定のライブラリ ファイルを提供するパッケージを特定できます:
# yum whatprovides libstdc++ Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. libstdc++-4.8.5-4.el7.x86_64 : GNU Standard C++ Library Repo : @repo
またはバイナリを検索するには:
# yum whatprovides *bin/ls Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. coreutils-8.22-15.el7.x86_64 : A set of basic GNU tools commonly used in shell scripts Repo : @repo Matched from: Filename : /bin/ls Filename : /usr/bin/ls
特定のパッケージが提供するファイルとライブラリを見つける
パッケージによって提供されるすべてのファイル (バイナリとライブラリ ファイル) を見つけるには、次のコマンドを使用します。
# rpm -ql bash /etc/skel/.bash_logout /etc/skel/.bash_profile /etc/skel/.bashrc /usr/bin/alias /usr/bin/bash /usr/bin/bashbug /usr/bin/bashbug-64 /usr/bin/bg