今朝、設定ファイルを置き換えるかどうかを尋ねるアップデートをいくつかインストールしました:
Configuration file '/etc/apache2/envvars'
==> Modified (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : start a shell to examine the situation
The default action is to keep your current version.
*** envvars (Y/I/N/O/D/Z) [default=N] ? N
現在の構成を維持しましたが、その後、疑問に思い始めました:
事後に、新しい構成ファイルがどのように見えるかを確認する方法はありますか?
承認された回答:
私はこれをテストしていませんが、ロジックは、更新されていたパッケージに含まれているファイルを確認できることを示しています。このページから選択可能な現在のディストリビューションのapache2パッケージを想定しています(dpkg.logで確認できます)
DEBファイルはアーカイブであり、常に3つのファイル(debian-binary、control.tar.gz、およびdata.tar.gz)が含まれています。以下に示すように、dpkg-debおよびtarコマンドを使用して、debパッケージからファイルを抽出および表示できます。
パッケージから一時的な場所にファイルを抽出するだけです。例として:dpkg-deb -x packagename.deb /tmp
必要に応じてパッケージ名とターゲットの場所を調整します。
パッケージのコンテンツを抽出したら、次に、含まれているdata.tar.gzコンポーネントのコンテンツをtar -xvzf data.tar.gz
で抽出します。
含まれているenvvarsファイルを見つけます(find ./ -name envvars
を使用できます data.tar.gzファイルを抽出した場所から。
ファイルを見つけたら、そのディレクトリに移動し、diff envvars /etc/apache2/envvars
を使用します。 現在の構成ファイルと提案された構成ファイルの違いを表示します。
出典:
http://www.thegeekstuff.com/2010/04/view-and-extract-packages/
man dpkg
man dpkg-deb
man diff