
似たようなものがありますが、dpkg -S <file>
たとえば設定ファイルの場合ですか/etc/samba/smb.conf
?私は彼らがから生成されたと思いますdpkg-reconfigure
。
user@host:~$ dpkg -S /etc/samba/smb.conf
dpkg-query: no path found matching pattern /etc/samba/smb.conf
答え1
dpkg -S
管理者スクリプト(またはその他のツール)によって生成された構成ファイルではなく、パッケージに直接提供されている構成ファイルのみを見つけることができます。後者に対する普遍的な解決策はありませんが、ファイルへの参照を見つけることが/var/lib/dpkg/info
最善の選択です。この場合:
$ grep -rl /etc/samba/smb.conf /var/lib/dpkg/info
/var/lib/dpkg/info/samba-common.config
/var/lib/dpkg/info/samba-common.postinst
/var/lib/dpkg/info/samba-common.postrm
/var/lib/dpkg/info/samba-common.templates
samba-common
これは、ファイルが以下によって管理されることを示します。文書を読んで確認することがpostinst
できます。
答え2
Stephen Kittの答えはおそらく最高です。しかし、そのような答えが見つからない場合は、試してみることもできますetckeeper
。 DebianとUbuntuにはデフォルトでインストールされていませんが、リポジトリにとって簡単な操作がapt install etckeeper
可能です。
Etckeeperを/etc
使用すると(git)バージョン管理を受けることができます。そのうちの1つは、パッケージがインストール/更新されるたびに自動コミットです。
これで、cd /etc && sudo git blame somefile
調整された時間を確認してその日付を検索できます。/var/log/dpkg*
作業量が多いですが、dpkg -S
見つからない場合は動作するはずです。