yum, dnfで作成されたファイルの一覧

yumコマンドやdnfコマンドで作成されたファイルの一覧を確認するにはrepoqueryコマンドを使用する。

$ repoquery --list パッケージ名

例えばmod_sslパッケージをインストールしたときに作成されるファイルは以下のコマンドで確認できる。

$ repoquery --list mod_ssl
/etc/httpd/conf.d/ssl.conf
/etc/httpd/conf.modules.d/00-ssl.conf
/usr/lib/.build-id
/usr/lib/.build-id/4a/8830897454148f261fe88778bd8ad4e42fbb11
/usr/lib/systemd/system/httpd-init.service
/usr/lib/systemd/system/httpd.socket.d/10-listen443.conf
/usr/lib64/httpd/modules/mod_ssl.so
/usr/libexec/httpd-ssl-gencerts
/usr/libexec/httpd-ssl-pass-dialog
/usr/share/man/man8/httpd-init.service.8.gz
/var/cache/httpd/ssl
/etc/httpd/conf.d/ssl.conf
/etc/httpd/conf.modules.d/00-ssl.conf
/usr/lib/.build-id
/usr/lib/.build-id/b6/b72e9f0ffd44d42b8685fb93cc82b74447b1c7
/usr/lib/systemd/system/httpd-init.service
/usr/lib/systemd/system/httpd.socket.d/10-listen443.conf
/usr/lib64/httpd/modules/mod_ssl.so
/usr/libexec/httpd-ssl-gencerts
/usr/libexec/httpd-ssl-pass-dialog
/usr/share/man/man8/httpd-init.service.8.gz
/var/cache/httpd/ssl

repoqueryコマンドを使えるようにする

repoqueryコマンドが使えない場合、dnf-utilsパッケージをインストールする。

$ sudo yum install dnf-utils

指定したファイルがどのパッケージでインストールされたかを確認する(repoquery –whatprovides)

yumコマンドやdnfコマンドで作成されたファイルを削除しても、yum updateコマンドやdnf updateコマンドでパッケージをアップデートすると、再度ファイルが作成される。

削除しようとしているファイルがなにかのパッケージで作成されたものかどうかを確認するにはrepoquery --whatprovidesコマンドを使う。

$ repoquery --whatprovides /etc/httpd/conf/httpd.conf
httpd-core-0:2.4.54-3.amzn2023.0.4.x86_64
httpd-core-0:2.4.55-1.amzn2023.x86_64
httpd-core-0:2.4.56-1.amzn2023.x86_64
$ repoquery --whatprovides /etc/httpd/conf.d/ssl.conf
mod_ssl-1:2.4.54-3.amzn2023.0.4.x86_64
mod_ssl-1:2.4.55-1.amzn2023.x86_64
mod_ssl-1:2.4.56-1.amzn2023.x86_64

上記結果を確認すれば/etc/httpd/conf/httpd.confを削除したければhttpd-coreパッケージを、/etc/httpd/conf.d/ssl.confを削除したければmod_sslパッケージを削除しなければならないのが分かる。