emgr コマンド
目的
暫定修正マネージャーを始動して、システムの暫定修正のインストール、除去、リスト、および検査を行います。
構文
emgr -l [ -L Label | -n interimfixNumber | -u VUID ] [-v{1|2|3} ] [ -X ] [-a path]
emgr -e interimfixPackage | -f ListFile [-w Directory ] [ -b | -k | -I ] [ -p ] [ -q ] [ -m ] [ -o ] [ -X ] [-a path]
emgr -i interimfixPackage | -f ListFile [ -w Directory ] [ -C ] [ -p ] [ -q ] [ -X ] [-a path]
emgr -C -i interimfixPackage | -f ListFile [ -w Directory ] [ -p ] [ -q ] [ -X ] [ -a path ]
emgr -C -L Label [ -p ] [ -q ] [ -X ]
emgr -r -L Label | -n interimfixNumber | -u VUID | -f ListFile [-w Directory ] [-a path] [ -b | -k | -I ] [ -p ] [ -q ] [ -X ]
emgr -c [ -L Label | -n interimfixNumber | -u VUID | -f ListFile ] [ -w Directory ] [-a path] [-v{1|2|3} ] [ -X ]
emgr -M | -U [ -L Label | -n interimfixNumber | -u VUID | -f ListFile ] [ -w Directory ] [-a path] [ -X ]
emgr -R interimfixLabel [ -w Directory ] [-a path] [ -X ]
emgr -P [ Package ] [ -a path] [ -X ]
emgr -d -e interimfixPackage | -f ListFile [-w Directory ] [-v{1|2|3} ]
説明
emgr (暫定修正マネージャー) コマンドを使用して、システム暫定修正をインストールおよび管理することができます。暫定修正マネージャーは、 epkg コマンドを使用して作成されたパッケージをインストールし、 暫定修正情報を含むデータベースを保守します。emgr コマンドは以下の操作を実行します。
- 暫定修正パッケージのインストール
- 暫定修正の除去
- 暫定修正のリスト作成
- 暫定修正の検査
- 暫定修正のマウント
- 暫定修正のアンマウント
- パッケージのロックの表示
- インストールされた暫定修正の強制除去
- 暫定修正マネージャーでロックされたファイルセットの更新 (installp、install_all_updates、または smit update_all コマンドを使用) を試行すると、ロックされたファイルセットを示す通知が表示されます。場合によっては、ファイルセットがインストールされなかった理由を示す通知がありません。lslpp コマンドを使用すると、IFIXLOCKED 状態にあるすべてのロックされたファイルセットが表示されます。
- アクティブなプロセスで使用されている暫定修正またはサービス更新で更新されたライブラリーまたは実行可能プログラムは、再始動しないとそのプロセスには反映されません。例えば、ksh を変更する更新では、既に実行されている ksh プロセスにはその変更が反映されません。同様に、libc.a ライブラリーへの更新は、既に実行されているプロセスには反映されません。また、ライブラリーの更新後にそのライブラリーと同一ライブラリーの dlopen 操作を使用するプロセスでは、再始動しないと不整合が発生する可能性があります。
Ifix の参照
暫定修正を参照する方法は、次のとおりです。
- ラベルによる参照
- 特定のシステム上にインストールされている各暫定修正は、
固有の暫定修正ラベルを保持しています。これは、
すべての異なるデータベース・オブジェクトをバインドする固有なキーです。
ラベルにより暫定修正を参照するには、
パラメーターとしてそのラベルを -L フラグに渡します。例えば、
ラベル ABC123 で暫定修正に関する検査操作を実行するには、次のように入力します。
emgr -cL ABC123
- Ifix ID による参照
- 特定のシステム上にインストールされている各暫定修正は、
暫定修正 ID を保持しています。暫定修正 ID は、暫定修正が暫定修正データベース内にリストされている順序番号に過ぎません。暫定修正のリスト作成に基づいて暫定修正に関する操作を実行する場合は、このオプションを使用する方が便利です。emgr コマンドは、特定の操作を実行する前に暫定修正 ID を暫定修正ラベルに変換します。ID
により暫定修正を参照するには、パラメーターとして ID
を -n フラグに渡します。
注: 暫定修正が除去および追加されるたびに、Ifix ID が変更される可能性があります。特定の暫定修正またはすべての暫定修正をリストするには、-l フラグを使用して、現行の暫定修正 ID 番号を常に確認してください。例えば、ID が 1 の最初の暫定修正に関する検査操作を実行するには、 次のように入力します。
emgr -cn1
- VUID による参照
- 暫定修正パッケージはどのエンティティーによっても正式に追跡されないので、
複数の暫定修正パッケージに対して同じ暫定修正ラベルを使用することができます。ただし、
emgr コマンドは、同じ暫定修正ラベルをもつ複数の暫定修正の同時インストールを受け入れません。VUID (仮想的固有 ID (Virtually Unique
ID)) を使用して、同じ暫定修正ラベルをもつ複数のパッケージを区別することができます。
emgr コマンドは、特定の操作を実行する前に
VUID を暫定修正ラベルに変換します。例えば、
VUID が 000775364C00020316020703 の
インストール済み暫定修正をリストするには、次のように入力します。
emgr -l -u 000775364C00020316020703
注: VUID は、暫定修正のインストールおよび除去のプレビュー・フェーズで表示されます。 VUID は、-v フラグを使用して 詳細レベル 3 でリストする場合も表示されます。
Ifix ロギング
下記の操作は、emgr コマンド・ログ・ファイル /var/adm/ras/emgr.log に記録されます。
- インストール
- 除去
- 検査
- マウント
- アンマウント
- 強制除去
installp による暫定修正の自動除去
暫定修正は epkg コマンドで圧縮することができ、そこには APAR 参照番号を含む APAR 参照ファイルを入れることができます。APAR 参照番号を使用することにより、修正が出荷されたすべてのテクノロジー・レベルについて、installp は暫定修正から APAR にマップし直すことができます。 適用されるテクノロジー・レベル、Service Pack、あるいは PTF にこの暫定修正が含まれていると installp が判断した場合には、installp は更新を適用するまえにこの暫定修正を自動的に除去します。
暫定修正が自動除去の対象となった場合、emgr コマンドはこの暫定修正のインストール時に以下のメッセージを表示します。
ATTENTION: Interim fix is enabled for automatic removal by installp.
並行更新
emgr コマンドは、並行更新と呼ばれる新しい形の暫定修正のインストールをサポートします。この形式の暫定修正には、AIX® カーネルに対する変更、またはそのカーネル拡張のいずれかが含まれています。これはシステム・メモリーに直接適用することができ、システムをリブートする必要がありません。このようにシステム・メモリーに直接パッチを適用することで、ディスク上のシステムの現行カーネルを含むファイルを変更せずに、カーネルの変更を安全に評価してテストすることができます。システム・メモリーに適用された並行更新は、システムをリブートすると持続しません。ただし、-C フラグを使用してディスクに対する並行更新による変更をコミットする場合を除きます。並行更新は、同じモジュールの別のパッチに直接適用することができます。既存のパッチを除去する必要はありません。ただし、ロードするモジュールのバージョンは 1 つのみでなければなりません。また、REBOOT_REQUIRED 状態では暫定修正の並行更新操作 (メモリー内またはディスク上) は、システムがリブートするまで実行できません。
emgr コマンドは、NIM シン・サーバー (ディスクレス・クライアントまたはデータレス・クライアント) での メモリー内並行更新の適用をサポートしています。各シン・サーバーはオペレーティング・システム・ファイルを他のクライアントと共有します (/usr ディレクトリーは読み取り専用である)。このため、ディスクへの並行更新をコミットする emgr オプション (-C フラグ) は、 シン・サーバーでは無効です。
シン・サーバーでは /usr ファイルシステムが読み取り専用であるため、emgr データベースは /var/emgrdata ディレクトリーに配置されることになります。
ある種の emgr 操作 (bosboot およびファイルシステム拡張など) は、シン・サーバー環境では サポートできません。その結果、-C、-e、-I、-k、 および –X の各 emgr フラグは、シン・サーバー環境では サポートされません。また、シン・サーバーの場合は bosboot 操作をサポートできないため、 –b フラグ (リブートを必要とする暫定修正に対応した bosboot プロセスをスキップ) は、 利用可能なときはいつも使用されることになります。
フラグ
項目 | 説明 |
---|---|
-a path | インストールのための代替ディレクトリー・パスを指定します。 注: -a フラグは、emgr コマンドの -e フラグと -a フラグが暫定修正のインストールで使用された場合に限り、暫定修正の除去で機能します。-e フラグと -a フラグを使用して暫定修正がインストールされなかった場合、emgr コマンドは代替ディレクトリー・パスから暫定修正を完全に除去しません。
次善策として、次のコマンドを使用して、代替ディレクトリーにインストールされた暫定修正を除去してください。
|
-b | emgr コマンドが、リブートを必要とする暫定修正に対して、通常の AIX bosboot プロセスをスキップするようにします。 |
-c | 検査操作を指定します。emgr コマンドが、指定された暫定修正 (複数の場合もある) に関する検査操作を実行するようにします。 |
-C | ディスクに対する並行更新を含む暫定修正をコミットします。このオプションは、-i オプションと一緒に使用する必要があります。あるいは、暫定修正が -i オプションと一緒に適用された後に使用できます。これにより、並行更新がシステムのリブート後にも持続します。 並行更新がコミットされると、モジュールに他のパッチがあるかどうかにかかわらず、除去することでモジュールがパッチを適用していない元の状態に復元されます。モジュールの既存のパッチはコミットの実行時にすべて除去されます。 |
-d | 目次およびトポロジーを表示します。このオプションを -v フラグと併用すると、詳細出力の表示に役立ちます。 |
-e interimfixPackage | 暫定修正パッケージ・ファイルのパスを指定し、暫定修正パッケージをインストールします。暫定修正パッケージ・ファイルは、epkg コマンドを使用して作成し、かつ 16 ビットの圧縮拡張子 .Z で終わる必要があります。 |
-f ListFile | 以下のいずれかを含むファイルを指定します。
|
-i interimfixPackage | 並行更新を含む暫定修正のパッケージ・ファイルのパスを指定し、その並行更新をシステム・メモリーに適用します。この更新は、-C フラグを使用しない限り、システムのリブート後は持続しません。 -i フラグを使用して、並行更新を同じモジュールの別の更新に適用することもできます。このような並行更新を「フォローオン」(後続の並行更新) と呼びます。 |
-I | bosboot コマンドの -I フラグを使用して AIX bosboot の低レベル・デバッガーを実行します。 |
-k | bosboot コマンドの -D フラグを使用して AIX bosboot 中に低レベル・デバッガーをロードします。 |
-l | emgr コマンドが、指定された暫定修正 (複数の場合もある) に関するリスト操作を実行するようにします。 |
-L Label | 暫定修正ラベルによるこの操作のための暫定修正を選択します。 |
-m | emgr コマンドがマウント・インストールを実行するようにします。暫定修正がマウント・インストールされると、暫定修正ファイルはターゲット・ファイルの上にマウントされます。 |
-M | emgr コマンドが、-m フラグを使用してマウント・インストールされた暫定修正 (複数の場合もある) をマウントするようにします。-M フラグは、-m フラグを使用してインストールされ、 -U フラグまたは他の方法 (例えば、システムのリブート) でアンマウントされた暫定修正をマウントするためのものです。 |
-n interimfixID | 暫定修正 ID を指定してこの操作のための暫定修正を選択します。 |
-o | 暫定修正のインストールにより既存のパッケージを上書きできることを指定します。 |
-p | emgr コマンドがインストールまたは除去のプレビューを実行するようにします。プレビューはすべての検査操作で実行されますが、変更は行われません。 |
-P [ Package ] | パッケージ表示操作を指定します。この操作では、暫定修正マネージャーによってロックされているすべてのパッケージ、 パッケージのインストーラー、およびロック・ラベル (複数の場合もある) が表示されます。 |
-q | エラーおよび重大な警告以外のすべての出力を抑止します。 |
-r | emgr コマンドが、指定された暫定修正 (複数の場合もある) に関する除去操作を実行するようにします。 アクティブなパッチを除去すると、モジュールに既存のパッチがある場合はそのパッチが復元されます。既存のパッチがない場合は、モジュールがパッチを適用していない元の状態に復元されます。 |
-R Label | emgr コマンドが強制除去操作を実行するようにします。このオプションは、暫定修正ファイルの除去、除去スクリプトの実行、
またはブート処理を実際に行わずに、暫定修正ラベルに関連付けられている暫定修正データおよびパッケージ・ロックを除去します。このオプションを使用できるのは、1 回に 1 つの暫定修正に限られます。暫定修正ラベルは、ターゲット暫定修正の識別に必要です。 重要:
|
-u VUID | VUID を指定してこの操作のための暫定修正を選択します。 |
-U | emgr コマンドが、-m フラグを使用してマウント・インストールされた暫定修正 (複数の場合もある) をアンマウントするようにします。 |
-v{1|2|3} | リスト操作の詳細レベルまたは検査操作の検査レベルを指定します。有効なレベルは 1、2、および 3 です。 |
-w Directory | emgr コマンドがデフォルトの /tmp ディレクトリーの代わりに指定の作業ディレクトリーを使用するようにします。 |
-X | 要求された emgr
操作を実行するのに十分なスペースがないファイルシステムの拡張を試みます。このオプションは、暫定修正パッケージおよび emgr
コマンドで提供される使用可能なスペースおよびサイズ見積もりに基づいてファイルシステムを拡張します。 注:
|
終了状況
- 0
- すべての emgr コマンド操作が正常に完了しました。
- >0
- エラーが発生しました。
セキュリティー
aix.system.install 権限を持つシステム管理者またはユーザーは、マルチレベル・セキュア (MLS) システムで emgr コマンドを実行できます。Ifix データ、保存ファイル、および一時ファイルは、root ユーザーのみがアクセス可能です。
emgr コマンドは、システムから、サポートされる MD5 生成コマンドを探します。見つかると、emgr コマンドは MD5 チェックサムをユーザーに表示します。ユーザーは、この MD5 合計を、保護されたソースとクロスチェックすることができます。MD5 生成コマンドが見つからない場合は、emgr コマンドはその後の 処置をとりません。
ユーザーは、EMGR_MD5_CMD シェル変数をエクスポートすることによって MD5 コマンドへのパスを強制的に設定できます。この変数には、MD5 生成コマンドへの絶対パスが入っている必要があります。
例
- games.020303.epkg.Z と呼ばれる暫定修正パッケージのインストールをプレビューするには、次のように入力します。
emgr -p -e games.020303.epkg.Z
- games.020303.epkg.Z と呼ばれる暫定修正パッケージをインストールし、
追加のスペースが必要な場合にファイルシステムを自動的に拡張するには、
次のように入力します。
emgr -X -e games.020303.epkg.Z
- システム上のすべての暫定修正をリストするには、次のように入力します。
emgr -l
- レベル 3 で暫定修正ラベル games
のリストを作成するには、次のように入力します。
emgr -lv3 -L games
- ラベル games をもつ暫定修正を除去するには、次のように入力します。
emgr -r -L games
- ファイル /tmp/myfixes 内の暫定修正
ラベルの除去をプレビューするには、次のように入力します。
emgr -rp -f /tmp/myfixes
- 検査レベル 2 ですべての暫定修正を検査するには、次のように入力します。
emgr -cv2
- 検査レベル 1 (デフォルトの検査レベル) で暫定修正 ID 番号 3
を検査するには、次のように入力します。
emgr -c -n3
- VUID が 000775364C00020316020703 の暫定修正を検査レベル 3 で検査するには、次のように入力します。
emgr -u 000775364C00020316020703 -c -v3
- すべてのロック・パッケージおよびその暫定修正ラベルをリストするには、
次のように入力します。
emgr -P
- installp パッケージ bos.rte.lvm
をロックしているすべての暫定修正ラベルをリストするには、
次のように入力します。
emgr -P bos.rte.lvm
- games.020303.epkg.Z と呼ばれる暫定修正パッケージをマウント・インストールし、
AIX
bosboot を抑止するには、次のように入力します。
emgr -e games.020303.epkg.Z -mb
- -m オプションを使用してシステム上にマウント・インストールされたすべての暫定修正ファイルをマウントするには、次のように入力します。
emgr -M
- 暫定修正ラベル games
に関連付けられているすべての暫定修正ファイルをアンマウントするには、
次のように入力します。
emgr -U -L games
- システム・メモリーに対する並行更新を含む kernelmod.031007.epkg.Z と呼ばれる暫定修正のパッケージを適用するには、次のように入力します。
emgr -i kernelmod.031007.epkg.Z
- 暫定修正のラベル kernelmod に関連付けられた、ディスクに対する並行更新をコミットするには、次のように入力します。
emgr -C -L kernelmod
- システム・メモリーに対する並行更新を含む kernelmod2.031007.epkg.Z と呼ばれる暫定修正のパッケージを適用し、さらにディスクに対する並行更新をコミットするには、次のように入力します。
emgr -i kernelmod2.031007.epkg.Z -C
- 暫定修正パッケージ
test.102403.epkg.Z についてレベル 3 の詳細出力を表示するには、
次のように入力します。
emgr -v3 -d test.102403.epkg.Z
ファイル
項目 | 説明 |
---|---|
/usr/sbin/emgr | emgr コマンドが入っています。 |
/usr/emgrdata/DBS/ifix.db | 暫定修正ヘッダー・データベースが入っています。 |
/usr/emgrdata/DBS/files.db | 暫定修正ファイル・データベースが入っています。 |
/usr/emgrdata/DBS/pkglck.db | パッケージ・ロック・データベースが入っています。 |
/usr/emgrdata/DBS/prereq.db | 前提条件データベースが入っています。 |
/usr/emgrdata/DBS/e2eprereq.db | 暫定修正前提条件データベースが入っています。 |
/usr/emgrdata/DBS/aparref.db | APAR 参照ファイル・データベースが入っています。 |