デフォルトのnginxパッケージは、sites-enabled
ディレクトリにdefault
という名前のシンボリックリンクを作成します。これは、sites-available
のデフォルトの設定ファイルを指します。現在、Nginxの上にあるアプリのパッケージを作成していますが、default
シンボリックリンクを削除または削除して、パッケージの構成ファイルに置き換えたいと考えています。理想的には、パッケージが削除された場合、元のdefault
シンボリックリンクが復元されます。
dpkg-divert
のマンページと例を読んでいますが、これができるかどうかはよくわかりません。これはdpkg-divert
で達成できますか、それとも別の方法を考える必要がありますか?
別のパッケージが所有するファイルを流用する場合:
あなたのpreinstで、ファイルをそらしてください。
dpkg-divert --add --package $your_package_name --rename \
--divert /etc/nginx/sites-available/default.disabled \
/etc/nginx/sites-available/default
あなたのpostrmで、ファイルを元に戻します。
dpkg-divert --remove --package $your_package_name --rename \
/etc/nginx/sites-available/default
これはシンボリックリンクでは機能しません/etc/nginx/sites-enabled/default
、パッケージの一部ではなく、nginx
パッケージのpostinstによって作成されるためです。シンボリックリンクはパッケージの一部であるため、名前をmv
に変更するだけです。これがDebianパッケージポリシーに準拠しているかどうかはわかりません。これがあなたにとって重要な場合、これはかなり専門的な質問なので、 debian-devel で検索または質問することをお勧めします。