アップグレード中に /etc 内の conf ファイルをマージするためのツールはありますか?

アップグレード中に /etc 内の conf ファイルをマージするためのツールはありますか?

ジェントゥーリナックス支援するためのツールセットがあります合併パッケージをアップグレードすると、conf ファイルが変更されます。たとえば、conf-updateツールまたはdispatch-confツールです。

しかし、Ubuntu でパッケージをアップグレードすると、(1) 新しい conf ファイルを使用する、(2) 古い conf ファイルを使用する、(3) シェルを起動する、というオプションしか表示されません。

Ubuntu には または に類似したツールはありませんconf-updatedispatch-conf?

詳しい説明:

設定ファイルが であるサービスがあるとします/etc/something.conf。パッケージをインストールすると、somethingすべてのオプションがコメント化された「デフォルト」設定が提供されます。その後、必要に応じてオプションを変更します。

その後、アップデートが行われ、アップデートによって新しい「デフォルト」構成がインストールされます。一部のオプションが廃止されたり、新しいオプションが追加されたり、既存のオプションの説明が修正されたりする場合があります。

この「デフォルト」構成は、すでに編集された/etc/something.confファイルと明らかに競合します。

ジェントゥーリナックス、新しい設定は一意の名前で保存され、「変更/更新された設定ファイル」を知らせる警告が表示されます。次に、conf-update影響を受ける設定ファイルに対して双方向のマージを実行するのに役立つ を実行します。各変更に対して、(1) 自分のバージョンを保持する、(2) パッケージのバージョンを使用する、(3) 手動で編集する、のいずれかを選択できます。通常、コメントの変更には (2)、特定の変更を保持するには (1)、デフォルトから大幅に逸脱している場合は (3) を選択します。

可能であれば、Ubuntu でも同様の制御/操作を実現したいと思います。

答え1

経由でアップグレードする場合apt-get、通常、構成ファイルで何を行うか (新しいバージョンをインストールする、古いバージョンを保持する、など) を尋ねるプロンプトが表示されます。

現在のバージョンを保持することを選択した場合、新しい構成ファイルは拡張子 (.dpkg-dist) 付きで保存されます。

新しいファイルを一覧表示するには、次のコマンドを使用できます。

find /etc -type f -name "*.dpkg-dist"

これらの設定ファイルに対してアクションを実行するには、提供されているユーシーエフツールです。構文は次のとおりです。

ucf <new-file> <old-file>

例えば、

ucf /etc/sysctl.conf.dpkg-dist /etc/sysctl.conf

以下も参照。

https://raphaelhertzog.com/2010/09/21/debian-conffile-configuration-file-managed-by-dpkg/

関連情報