Linuxパッケージは、特定のアプリケーションに属するすべてのファイルを含む圧縮ファイルアーカイブです。 状況によっては、ファイルに属するパッケージ名を見つける必要がある場合があります。
このチュートリアルでは、 ファイルが属している、または所有しているパッケージを見つける Linuxシステムで。
Ubuntu / Debianシステムでファイルを提供するパッケージ
Ubuntu / Debianシステムでファイルを提供するパッケージを見つけるには、いくつかの方法があります。
dpkgの使用
dpkgおよびdpkg-queryコマンドを使用して、ファイルを提供するパッケージを見つけることができます。 このコマンドは、インストールされているパッケージからファイル名を検索します。
構文:
dpkg -S filename
dpkg-query -S filename
にとって example、/ bin / lsファイルが属するパッケージを見つけるには、次のコマンドを使用します。
$ dpkg -S /bin/ls
dpkg-queryの使用
dpkg-queryコマンドを使用して、インストールされているファイルのパッケージ名を見つけることもできます。
$ dpkg-query -S /bin/ls
$ dpkg-query -S '/bin/ls'
$ dpkg-query -S 'passwd*'
apt-fileの使用
apt-fileを使用して、システム上のDEBパッケージ内のファイル、およびDebianシステムにインストールされていないがリポジトリから入手できるパッケージを探すことができます。
apt-fileパッケージはデフォルトではインストールされません。 Ubuntuおよびその他のDebianベースのLinuxディストリビューションにapt-fileをインストールするには、次のように入力します。
$ sudo apt install apt-file
必ずデータベースキャッシュを更新して、次のように入力してください。
$ sudo apt-file update
次に、routeコマンドを提供するパッケージを検索し、次のコマンドを使用します。
$ apt-file search 'bin/route'

左側には、routeコマンドに属するパッケージ名が表示されています。
RHELベースのシステムでファイルを提供するパッケージ
これは、RedhatなどのLinuxディストリビューションでサポートされています。 Fedora、AlmaLinux、Rocky Linux、CentOS Stream、およびOracleLinux。
DNFコマンドの使用
使用できます provides
DNFとともにオプションを使用して、RHELベースのシステムでファイルのパッケージを検索します。 Fedora。 これは、利用可能なパッケージのすべてのファイル提供と一致します。
構文:
dnf provides filename
dnf provides *filename
dpkg-query --search '/path/to/file'
にとって example、バイナリファイルのパッケージを検索する場合は、次のコマンドを使用します。
$ dnf provides *bin/ls

RPMとYumコマンドの使用
rpmコマンドを使用して、特定のファイルを提供するパッケージを見つけることができます。
構文:
rpm -rf filename
rpm -q --whatprovides filename
これにより、インストールされたパッケージファイルのパッケージ名が検索されます
にとって example、/ bin / lsファイルを提供するrpmパッケージを検索する場合は、次のコマンドを使用します。
$ rpm -qf /bin/ls

次のrpmコマンドを使用することもできます。
$ rpm -q --whatprovides /etc/nginx/nginx.conf

yumコマンドを使用すると、次のように実行できます。
$ yum whatprovides netstat
特定のライブラリファイルを使用して、それが属するパッケージを検索することもできます
Debian / Ubuntuにインストールされていないファイルを検索する
あなたは訪問することができます Debianパッケージ と Ubuntuパッケージ検索 ファイルを検索します。 結果にはパッケージ名が表示されます。 次に、aptコマンドを使用してそれぞれのパッケージをインストールできます。

結論
このチュートリアルでは、Linuxでファイルが属するパッケージを見つける方法を学びました。 読んでくれてありがとう、あなたのフィードバックと提案を提供してください。