いくつかのデフォルトの設定ファイルを含む、独自のDebianパッケージを作りたいです。 dpkg -i
で更新した後、このファイルを書き換えたくないです。
私の問題を解決する方法は何ですか?
debian/conffiles
というファイルを作成し、その中のファイルをリストできます。これにより、dpkg
は上書きする前にファイルの変更をチェックします。 Debianポリシーから :
各ファイルについて、パッケージに含まれるファイルのバージョンが、パッケージの最後のバージョンに含まれていたバージョン(アップグレード元のバージョン)と同じかどうかを確認します。また、システムに現在インストールされているバージョンと最後のバージョンで出荷されたバージョンを比較します。
ユーザーもパッケージメンテナーもファイルを変更していない場合は、そのまま残されます。どちらか一方がバージョンを変更した場合、変更されたバージョンが優先されます。つまり、ユーザーがファイルを編集しても、パッケージメンテナーが別のバージョンを出荷しない場合、ユーザーの変更は黙って残りますが、メンテナーが新しいバージョンを出荷し、ユーザーがそれを編集していない場合、新しいバージョンがインストールされます(情報メッセージが表示されます)。両方のバージョンが変更されている場合、ユーザーは問題についてプロンプトが表示され、違いを自分で解決する必要があります。
dpkg
にファイルを再度触れさせたくない場合は、最初のインストール時にpostinst
スクリプトでファイルを作成し、アップグレードでは何もしないという方法もあります。パージ時にファイルを削除する対応するpostrm
スクリプトも作成することを忘れないでください。