mklpcmd コマンド

目的

新規の最小特権 (LP) リソースを Resource Monitoring and Control (RMC) サブシステムに定義し、 ユーザー・アクセス権を指定します。

構文

mklpcmd [-n host] [-l] [ -c 0123 ] [-R RunCmdName] [-s FilterScript] [-A FilterArg] [-h] [-TV] resource_name command_path [ ID perm ] …

説明

mklpcmd コマンドは、新規の LP リソースを Resource Monitoring and Control (RMC) サブシステムに定義します。 LP リソースは、root のみが使用できるコマンドまたはスクリプトであ り、これらのコマンドまたはスクリプトへのアクセスは、LP のアクセス制御リスト (ACL) 内の アクセス権に基づいてユーザーに権限付与されます。resource_name パラメーターを 使用して LP リソースを指定してください。command_path パラメーターにより、LP アクセスを 用いて実行できるコマンドまたはスクリプトを指定します。 コマンドまたはスクリプトの完全パス名を指定します。 リソース作成時に command_path が存在する場合、LP リソース・マネージャーは CheckSum を計算し、 CheckSum 属性値を割り当てます。command_path が存在しない場合、LP リソース・マネージャーは、 CheckSum 属性値として 0 を割り当てます。

-l フラグを使用して、LP リソースをロックします。リソースを削除するためには、その前に そのリソースをアンロックする必要があります。 -c フラグを使用して、リソースの制御設定を指定します。

mklpcmd コマンドを使用して、リソース作成時にユーザー用のアクセス権を指定することもできます。 このためには、そのリソースに関する管理者アクセス権を持っている必要があります。 管理者アクセス権により、各アクセス権を設定および編集することができます。 このコマンドを使用して、複数のユーザー ID とアクセス権を指定できます。 詳しくは、のセクションを参照してください。

このコマンドはどのノードでも実行できます。管理ドメインまたはピア・ドメインでは、-n フラグを使用して、host により指定されるノード上で LP リソースを定義します。 それ以外の場合、このコマンドはローカル・ノードで実行されます。

フラグ

-n host
LP リソースを定義しようとするドメイン中のノードを指定します。デフォルトでは、この LP リソースは、ロ ーカル・ノードで定義されます。-n フラグが有効なのは、管理ドメインまたはピア・ドメインの中だけで す。 CT_MANAGEMENT_SCOPE 変数が設定されていない場合、LP リソース・マネージャーは次の順序で有効範囲設定値を使用します。
  1. 管理ドメイン (存在する場合)
  2. ピア・ドメイン (存在する場合)
  3. Local 有効範囲

mklpcmd コマンドは、LP リソース・マネージャーが検出した最初の有効範囲に対して 1 回実行されます。

-l
新規の LP リソースを、無意識に変更できないように、「ロック済み」として定義します。 新規リソースは、Lock 属性が設定解除されるまで RMC サブシステムから除去することはできません。

このフラグを指定しない場合は、新規リソースはロックされません。 これはデフォルトです。

-c 0 1 2 3
ControlFlags 属性を設定します。この属性を使用して、LP コマ ンドに対して制御機能を指定します。 ControlFlags を指定しない場合は、デフォルトで 1 に設定 されます。このフラグを使用して、次のいずれかの値を指定します。
0
CheckSum 値を検証しません。
1
CheckSum 値を検証しません。これはデフォルトです。
2
CheckSum 値を検証します。
3
CheckSum 値を検証します。

runlpcmd コマンドを使用して LP リソースを実行しようとする 場合、LP リソースが示したコマンド実行前にどの検査を行うかを、 ControlFlags 属性の値で決定します。

RSCT の本リリースでは、ControlFlags 属性値で指定することは、 CheckSum 値を検証する必要があるかどうかです。

RSCT の前のリリース では、ControlFlags 属性値により、runlpcmd への入力引数に 特定の文字が存在することは許可しないかどうかも指定しました。しかし、これらの文字の検査は不要と なりました。

RSCT の前のリリースで定義された LP リソースとの互換性を保つ ために、CheckSum 値の検証に関して ControlFlags 属性値 は同じ値のまま残しました。 その結果、値 01CheckSum 値の検証を行わないこと を示し、値 23CheckSum 値の検証を行うこ とを示すようになりました。

-R RunCmdName
このリソースの RunCmdName 値を指定します。この値は 、runlpcmd コマンドのパラメーターとして使用されます。
-s script_path
フィルター・スクリプトの完全修飾パスを指定します。
-A argument
フィルター・スクリプトに渡される引数の文字列を指定します。
-h
コマンドの使用方法の文を標準出力に書き込みます。
-T
コマンドのトレース・メッセージを標準エラーに書き込みます。
-V
コマンドの詳細メッセージを標準出力に書き込みます。

パラメーター

resource_name
RMC サブシステムに定義される LP リソースの名前または ID です。
command_path
コマンドまたはスクリプトの完全修飾パス名です。
ID perm
リソースの作成時にユーザー用のアクセス権を指定します。このパラメーターはオプションです。
ID
ACL エントリーのユーザー ID を指定します。このパラメーターの有効な 形式については、lpacl 情報ファイルのユーザー ID のセクションを参照してください。
perm
ACL エントリーのユーザー・アクセス権を指定します。このパラメーターは、以下の任意の値を組み合わせて構成することができます。
r
読み取り許可 (qle、および v のアクセス権から構成される)
w
書き込み許可 (dcs、および o のアクセス権から構成される)
a
管理者アクセス権
x
実行アクセス権
q
照会アクセス権
l
列挙アクセス権
e
イベント・アクセス権
v
検証アクセス権
d
定義および定義解除アクセス権
c
リフレッシュ・アクセス権
s
設定アクセス権
o
オンライン、オフライン、およびリセット・アクセス権
0
アクセス権なし
上記のアクセス権については、lpacl 情報ファイルのユーザーのアクセス権のセクションを参照してください。

セキュリティー

  • 1 つ以上の ID:perm パラメーターを使用 して mklpcmd コマンドを実行するには、以下が必要です。
    • IBM.LPCommands リソース・クラスの Class ACL の中の読み取りおよび書き込み許可。
    • Resource Initial ACL の中の読み取りおよび管理者アクセス権。

      代わりに、これらの許可が Resource Shared ACL の中に存在する場合は、 Resource Initial ACL が Resource Shared ACL の使用を指示できます。

  • ID:perm パラメーター無指定で mklpcmd コマンドを実行するには、IBM.LPCommands リソース・クラスの Class ACL の中の書き込み許可が必要です。
アクセス権は、連絡先システムの LP ACL で指定されています。 LP ACL に関する一般情報については lpacl ファイルを、LP ACL の変更については「RSCT: Administration Guide」を参照してください。

終了状況

0
コマンドは正常に実行されました
1
RMC でエラーが発生しました。
2
コマンド・ライン・インターフェース (CLI) スクリプトでエラーが発生しました。
3
コマンド・ラインに間違ったフラグが指定されました。
4
コマンド・ラインに間違ったパラメーターが指定されました。
5
コマンド・ラインの入力に誤りがあるため、RMC でエラーが発生しました。
6
リソースが見つかりません。

環境変数

CT_CONTACT
RMC デーモンとのセッションに使用されるシステムを決定します。 CT_CONTACT にホスト名または IP アドレスが設定されていると、このコマンドは指定されたホスト上の RMC デーモンと連絡を取ります。 CT_CONTACT が設定されていない場合、このコマンドは、コマンドが実行されているローカル・システムの RMC デーモンと連絡を取ります。RMC デーモン・セッションのターゲットおよび管理有効範囲によって、処理される LP リソースが決まります。
CT_MANAGEMENT_SCOPE
LP リソースを処理するために RMC デーモンとのセッションに使用される管理有効範囲を決定します。 この管理有効範囲は、リソースを処理可能な考えられるターゲット・ノード のセットを決定します。有効な値は以下のとおりです。
0
Local 有効範囲を指定します。
1
Local 有効範囲を指定します。
2
ピア・ドメイン 有効範囲を指定します。
3
管理ドメイン 有効範囲を指定します。

この環境変数が設定されていない場合、Local 有効範囲が使用されます。

実装上の固有な条件

このコマンドは、AIX® 用 Reliable Scalable Cluster Technology (RSCT) ファイルセットの一部です。

標準出力

-h フラグが指定されている場合は、このコマンドの使用方法の説明文が標準出力に書き込まれます。 -V フラグが指定されると、このコマンドの詳細メッセージが標準出力に書き込まれます。

標準エラー

すべてのトレース・メッセージは、標準エラーに書き込まれます。

  1. ローカル・ノード上の /tmp/user1/lpcmd1 と呼ばれるコマンドを 指す LP1 と呼ばれる LP リソースを作成するには、次のように入力します。
    mklpcmd LP1 /tmp/user1/lpcmd1 
  2. 管理ドメイン内の nodeB 上の /tmp/my_command1 と呼ばれる コマンドを指す LP2 と呼ばれる LP リソースを作成するには、次のように入力します。
    mklpcmd -n nodeB LP2 /tmp/my_command1 
  3. ControlFlags3 に設定して (これは CheckSum 値 の検証を意味します)、lp3 と呼ばれる LP リソースを作成するには、次のように入力します。
    mklpcmd -c 3 LP3 /tmp/cmd_lp3 
  4. /tmp/testscript を指し、RunCmdName 値が testFilterScript 値が /tmp/filterscr、およびフィルター引数が node1 node2 である、lp4 と呼ばれる LP リソースを作成するには、次のように入力します。
    mklpcmd -R test -f /tmp/filterscr -A "node1,node2" lp4 /tmp/testscript
  5. /usr/bin/mkrsrc を指し、ユーザー user1@LOCALHOST および user2@LOCALHOST に読み取り、書き込み、および実行アクセス権を付与する、lp5 と呼ばれる LP リソースを作成するには、次のように入力します。
    mklpcmd lp5 /usr/bin/mkrsrc user1@LOCALHOST rwx  user2@LOCALHOST rwx

場所

/opt/rsct/bin/mklpcmd
mklpcmd コマンドが入っています。