Red Hat Training

A Red Hat training course is available for Red Hat Satellite

第8章 エラータの管理

Red Hat 製品のソフトウェアパッケージは、エラータと呼ばれる更新に依存します。これらのソフトウェアパッケージは定期的な間隔、さらに非同期的に発表されます。以下のセクションでは hammer を使用してエラータを検出、適用する方法を説明します。以下の手順を Web UI で行う手順は『Red Hat Satellite Host Configuration Guide』を参照してください。

8.1. 利用可能なエラータの検出

全組織で利用可能なエラータを表示するには、以下のコマンドを実行します。

$ hammer erratum list

例8.1 エラータのフィルタリング

hammer erratum list コマンドは出力一覧のフィルタリングおよび順序付けのオプションが数多く含まれています。たとえば、特定のセキュリティー修正が含まれるエラータを検索するには以下のコマンドを実行します。

$ hammer erratum list --cve CVE-2014-0453

以下のコマンドにより、指定のバグが含まれる特定の製品に対して適用可能なエラータが表示されますが、この際に対象のセキュリティーエラータが一番上に表示されるように指定のバグが順番に表示されます。

$ hammer erratum list \
--product-id 7 \
--search "bug = 1213000 or bug = 1207972" \
--errata-restrict-applicable 1 \
--order "type desc"

--search オプションを使用する構文に関する情報は 『Red Hat Satellite Host Configuration Guide』を参照してください。また、hammer に実装されるフィルタリングオプションについての詳しい情報は hammer erratum list --help の出力を参照してください。

特定のエラータの詳細を表示するには、以下のコマンドを実行します。

$ hammer erratum info --id <erratum_ID>

<erratum_ID> は、hammer erratum list コマンドの出力にあるエラータの一意識別子に置き換えます。名前やリポジトリー名でエラータを特定することも可能です。詳しくは hammer erratum info --help の出力を参照してください。

8.2. ホストへのエラータの適用

ホストで利用可能なエラータを表示するには、以下のコマンドを実行します。

$ hammer host errata list --host <hostname>

選択したエラータをホストに適用するには、以下のコマンドを実行します。

$ hammer host errata apply \
--host <hostname> \
--errata-ids <erratum_ID1>,<erratum_ID2>...

例8.2 ホストへの全エラータの適用

以下の Bash スクリプトは、ホストで利用可能なエラータすべて適用します (auth01.example.com)。

HOST="auth01.example.com"
for i in $(hammer --csv host errata list --host $HOST | grep -vi '^ID' | awk -F, {'print $1'})
do
  hammer host errata apply --host $HOST --errata-ids $i
done

例8.3 セキュリティーアドバイザリーの適用

以下の例は hammer を使用してホストにセキュリティー修正を適用する方法を示します。

  1. 選択した問題の修正が含まれるエラータ (CVE-2015-3238) を検索します。

    $ hammer erratum list --cve CVE-2015-3238
    -------|----------------|----------|------------------------------
    ID     | ERRATA ID      | TYPE     | TITLE
    -------|----------------|----------|------------------------------
    f30e66 | RHSA-2015:1640 | security | Moderate: pam security update
    -------|----------------|----------|------------------------------
  2. セキュリティーエラータ (RHSA-2015:1640) がお使いのホスト (auth01.example.com) に適用可能かどうかを確認します。

    $ hammer host errata list \
    --host auth01.example.com \
    --search "RHSA-2015:1640"
  3. ホストにエラータを適用します。

    $ hammer host errata apply \
    --host auth01.example.com \
    --errata-ids "RHSA-2015:1640"

以下の Bash スクリプトを使用して、該当する場合にはセキュリティーエラータを全ホストに適用することができます (例: RHSA-2015:1640)。

ORG="ACME"
RHSA="RHSA-2015:1640"

for i in $(hammer --csv host list --organization $ORG | grep -vi '^ID' | awk -F, {'print $2'})
do
  hammer host errata apply --host $i --errata-ids $RHSA
done

エラータが正しく適用されたことを確認するには、以下のコマンドの出力で適切なタスクを検索します。

$ hammer task list

選択したタスクの状態を確認するには、以下のコマンドを実行します。

$ hammer task progress --id <task_ID>

8.3. ホストコレクションへのエラータの適用

ホストコレクションに選択したエラータを適用するには、以下のようにコマンドを入力します。

$ hammer host-collection erratum install \
--errata "<erratum_ID1>,<erratum_ID2>,..." \
--name "my-collection" --organization $ORG

このコマンドは、Red Hat Satellite 6.2.8 以降で利用できます。