genld コマンド
目的
genld コマンドは、 システム上で現在実行されているすべてのプロセスのリストを収集し、 オプションで、それぞれのプロセスに対応するロード済みオブジェクトのリストを報告します。
構文
説明
genld コマンドは、現在実行されている各プロセスについて、
そのプロセス ID とプロセス名、
およびそのプロセスのロード済みオブジェクトのリスト (オプション) で構成されるレポートを表示します。オブジェクトのアドレスとパス名が表示されます。ライブラリーのメンバーは、
ブラケットで囲んで示されます。
例えば、/usr/lib/libc.a[shr.o]
は、shr.o
が
libc.a ライブラリーのロード済みメンバーであることを意味します。
-u フラグを使用して genld コマンドの出力をフィルターに掛け、ロード済みオブジェクトの古いバージョンがあるプロセスを表示することができます。オブジェクトは、そのオブジェクト・イメージが現在ファイル・システムにインストールされているイメージと異なる場合、古いオブジェクトと見なされます。-u フラグは、更新を適用した後に、新しいバイナリーとライブラリーを使用するために再始動操作を必要とするプロセスをリストする目的で使用されます。
注:
- 特権のないユーザーは、ロード済みオブジェクトをそのプロセスでのみ見ることができます。
- ロード済みオブジェクトへのフルパス名を判別できない場合、genld コマンドは、そのオブジェクトがジャーナル・ファイル・システム (JFS2) 以外のファイル・システム上に置かれていると、そのオブジェクトに対する更新を報告しないこともあります。オブジェクトが同一のコピーによって置き換えられた場合も、オブジェクトが
updated
として報告されることがあります。
フラグ
項目 | 説明 |
---|---|
-a Area | Area パラメーターで指定された共用ライブラリー領域を使用するプロセスのみがリストされます。 |
-d | テキスト・セクションのアドレスとサイズに加えて、 データ・セクションのアドレスとサイズを示します。 このオプションは、-l フラグがなければ効果がありません。 |
-h | 使用方法に関するステートメントを表示します。 |
-l | 現在システム上で実行されている各プロセスのロード済みオブジェクトのリストを報告します。 |
-u | ロード済みオブジェクトの古いバージョンがあるプロセスだけをリストします。 |
セキュリティー
RBAC ユーザーおよび Trusted AIX ユーザーへの注意: このコマンドは特権命令を実行できます。 特権命令を実行できるのは特権ユーザーのみです。 権限および特権についての詳細情報は、「セキュリティー
」の『特権コマンド・データベース』を参照してください。 このコマンドに関連した特権および権限のリストについては、lssecattr コマンドまたは getcmdattr サブコマンドの項を参照してください。
例
-
実行されている各プロセスのロード済みオブジェクトのリストを取得するには、次のコマンドを入力します。
genld -l
- ロード済みオブジェクトの古いバージョンがあるプロセスのリストを取得するには、次のコマンドを入力します。
genld -u
- 古いバージョンの libcrypt.a ライブラリーがロードされているプロセスのリストを取得するには、次のコマンドを入力します。
genld -lu | grep -p libcrypt.a