2 つの環境間のハードウェア / パッケージ / 構成のシステム全体の違いを識別するための Linux / Ubuntu フィンガープリント コマンド/メソッド

2 つの環境間のハードウェア / パッケージ / 構成のシステム全体の違いを識別するための Linux / Ubuntu フィンガープリント コマンド/メソッド

私には 2 つの異なる環境があり、一方の環境ではもう一方の環境では発生しない奇妙な動作がいくつか発生しています。具体的には、エラーは PHP に関連しています。

Fatal error: Nesting level too deep - recursive dependency?

これは AWS でのみ発生し、ESXi VM である内部ホスティングでは発生しません。PHP、PHP モジュール、Apache、Apache モジュールのバージョンと構成を同期しようとしましたが、この AWS のみのエラーを排除できませんでした。

その結果、私たちは網を広げて依存関係とシステム全体の構成を調べ、環境の違いをさらに排除したいと考えています。同僚からは、少なくとも概念レベルでは、まさにこの目的のためのフィンガープリント ツールがあるかもしれないとアドバイスを受けました。

ご提案があればよろしくお願いします。

答え1

dpkg --get-selectionsと組み合わせるとapt-cache policy役立ちます。両方のサーバーが同じソースミラーを使用していると仮定すると、次のようなものになります。

{ for i in $( dpkg --get-selections | grep -v "deinstall" | cut -f1 ); do \
apt-cache policy $i; \
done } > $( cat /etc/hostname ).txt

特定のパッケージの違いを見つけるのに役立つかもしれません。

関連情報