質問: 前置き ---- 現在参画中のプロジェクトで脆弱性対応を実施しているのですが、テスト環境と本番環境で適応されるパッチ(パッケージ)のバージョンを同じにしたいと思っています。(セキュリティ部門に対して脆弱性対応でどのパッケージのバージョンを適応したのかをパッチ適応前に提出する必要があるため) ある特定の日に、テスト環境と本番環境で`yum check-update --security`コマンドを実行し、その結果を`yum update`してテスト環境と本番環境にパッチ適応を実施しましたが、実際に適応してみると一部のパッケージのバージョンが他のパッケージの依存関係によって、想定しているバージョンよりも高くなってしまいました(環境によって若干インストールされているパッケージに差異があるようです) お聞きしたいこと --------- セキュリティパッチ適応の必要があるパッケージを`yum check-update --security`で抽出しているのですが、他のパッケージの依存関係も含めて最終的に適応されるバージョンなどを出力する方法はありませんでしょうか。 [避けたいこと] * 適応パッチが1回の脆弱性対応で大体100以上あるので、1つ1つのパッケージを`yum update`を実験的に実行して、依存関係を把握すること。
回答: まずは下記でインストールされているパッケージの一覧を確認して環境ごとの差異がないかを確認することが必要かと思います。 ``` $ rpm -qa ``` yum自体にはupdateコマンドの実行結果を実際に実行せずにテストする、といった項目は無いようです。 rpm --testを全パッケージに実行しようとしても、アップデート中に変更された内容も加味してのテストを実行できないからだと思われます。 思いつく対応としては、yum updateを実行した後の確認時に"n"で実行を止めてリストを確認するくらいでしょうか。 ``` # echo "n" | yum update ``` yum updateの実行タイミングによっても更新されるパッケージの内容が変わる可能性はありますので、テスト環境で`yum --downloadonly`で取得したパッケージをそれぞれの環境に適用するといった形で合わせるといった対応も考えられるかと思います。