アップグレードが予定されているパッケージに関連付けられているスクリプト/トリガーを表示して、Webサーバーが再起動されるかどうかなどを確認できるようにしたいと思います。それを表示するaptitudeオプション(またはapt/dpkg)が見つかりません。私が得ることができる最高のものは内容(ファイル)です。これを示す、見逃したシミュレーション/冗長/コンテンツスイッチの組み合わせはありますか?
さらに、サービスの再起動など、パッケージで今すぐに実行したくないことが発生した場合、一部またはすべてのスクリプトを実行せずにパッケージをインストールする方法はありますか?
dpkg -I package.deb
を使用して制御ファイルとその他の情報を印刷するか、dpkg -e package.deb
を使用して制御情報ファイルのみを抽出できます。
また、dpkgが--dry-run
で何をするかを確認するために、予行演習を行うことができます。
dpkg --dry-run -i package.deb
いいえ、aptitudeを使用してこれを行う方法はわかりません。
スクリプトを直接見ることができます。アップグレード中に実行されるスクリプトはパッケージに含まれています。 arを使用してdebを解凍します。
ar -x package.deb
次に、control.tar.gz
を調べます。スクリプトが含まれています。
--debug
のように、dpkg
にはSudo dpkg --debug=72200 -i package.deb
オプションもあります。
詳細出力にはいくつかの利用可能なオプションがあり、それらを組み合わせることができます。
dpkg --debug=help
を実行すると、使用可能なすべてのオプションを表示できます。
pi@kaldi:~ $ dpkg --debug=help
dpkg debugging option, --debug=<octal> or -D<octal>:
Number Ref. in source Description
1 general Generally helpful progress information
2 scripts Invocation and status of maintainer scripts
10 eachfile Output for each file processed
100 eachfiledetail Lots of output for each file processed
20 conff Output for each configuration file
200 conffdetail Lots of output for each configuration file
40 depcon Dependencies and conflicts
400 depcondetail Lots of dependencies/conflicts output
10000 triggers Trigger activation and processing
20000 triggersdetail Lots of output regarding triggers
40000 triggersstupid Silly amounts of output regarding triggers
1000 veryverbose Lots of drivel about eg the dpkg/info directory
2000 stupidlyverbose Insane amounts of drivel
Debugging options can be mixed using bitwise-or.
Note that the meanings and values are subject to change.
いいえ、メンテナスクリプトの一部を実行することはできません。そのためのフックはありません。
スクリプトを手動で調べて何が行われるかを確認することはできます。ここでも、「ドライラン」では何が行われ、何が行われないかを正確に示すことはできません。「これらの引数を使用してpostinstを実行します」のみです。
これらが、ステージング環境とテスト環境がある理由です。