mkssys コマンド

目的

サブシステム・オブジェクト・クラスにサブシステム定義を追加します。

構文

mkssys { -p Path -s Subsystem -u UserID } [ -a Arguments ] [ -e StandardError ] [ -i StandardInput ] [ -o StandardOutput ] [ -t Synonym ] [ -O | -R ] [ -d | -D ] [ -q | -Q] [ -K | [ -I MessageQueue -m MessageMType | -f StopForce -n StopNormal -S ] ] [ -E Nice ] [ -G Group ] [ -w Wait ]

説明

mkssys コマンドは、新規サブシステム定義をサブシステム・オブジェクト・クラスに追加します。 -p-s、および -u フラグを指定した後に何もフラグを選択しなければ、 デフォルトは -e /dev/console-i /dev/console-o /dev/console-O-d-Q-K-E 20、および -w 20 です。

注: サブシステムについて各種アクションがとられるときにシステム・リソース・コントローラー (SRC) によって実行される監査はすべて、mkssys コマンドを使用してそのサブシステムを作成したユーザーのログイン ID に照らして記録されます。例えば、root ユーザー権限でログインした場合、サブシステムは、監査アカウントとして root 権限で追加されます。

フラグ

項目 説明
-a Arguments サブシステムの始動時に、コマンドに渡す引数を指定します。 これらの Arguments 変数は、シェルが使用する規則と同じ規則に従い、SRC によってサブシステムに渡されます。 例えば、引用符で囲まれた文字列は 1 つの引数として渡され、引用符で囲まれていないブランクは引数の区切り文字として渡されます。引用符は単一引用符でも二重引用符でも使用できます。
-d lssrc -a コマンド (全状況表示) の要求がなされると、アクティブでないサブシステムが表示されることを指定します。 -D-d フラグが存在しない場合は、デフォルトで、-d フラグが使用されます。
-D 全状況を表示する要求またはグループの状況を表示する要求が発行されたとき、アクティブでないサブシステムが表示されないことを指定します。
-e StandardError サブシステムの StandardError データが存在する場所を指定します。 -e フラグを指定しない場合、/dev/console ファイルが標準エラーとして使用されます。
-E Nice サブシステムの実行優先度を変更します。 有効な値は 0 から 39 までです (通常、Nice 変数は正の数にマップされます)。 -E フラグが指定されていないと、サブシステムの優先順位はデフォルトの 20 になります。 0 から 19 までの値は、root 権限を持つユーザー用に予約されています。
-f StopForce サブシステムの強制終了が要求されたときにサブシステムに送信されるシグナルを指定します。 サブシステムがシグナルを使用する場合にのみ使用してください。 StopForce パラメーターが有効なシグナルでない場合、mkssys コマンドは異常終了します。
-G Group サブシステムが指定された Group に属し、さらに Group に関するすべてのグループ・アクションに応答することを指定します。
-i StandardInput サブシステムの標準入力を経由する場所を指定します。 サブシステムがソケット通信を使用するとき、このフィールドは無視されます。 -i フラグが指定されていない場合、デフォルトで /dev/console ファイルが標準入力として使用されます。
-I MessageQueue サブシステムがメッセージ・キューを通信方式として使用することを指定します。 MessageQueue 変数は、サブシステム用のメッセージ・キューを作成するためのメッセージ・キュー・キーを指定します。入力データとしてサブシステム・パス名を指定した ftok サブルーチンを使用して、固有キーを生成します。
-K サブシステムが通信方式としてソケットを使用することを指定します。 通信方式が指定されない場合のデフォルトはソケット通信です。
-m MessageMType SRC によってサブシステムに送信されるパケット上でサブシステムが予期するメッセージ・タイプ・キーを指定します。 サブシステムがメッセージ・キュー通信を使用する場合にのみ使用してください。
-n StopNormal サブシステムの通常の停止が要求されたときにサブシステムに送信されるシグナルを指定します。 サブシステムがシグナル通信を使用する場合にのみ使用してください。 StopNormal 変数が無効シグナルである場合、mkssys コマンドは異常終了します。
-o StandardOutput サブシステムの標準出力が置かれる場所を指定します。 -o フラグが指定されない場合、デフォルトで /dev/console ファイルが標準出力に使用されます。
-O サブシステムが異常終了したときサブシステムを再始動しないことを指定します。 デフォルトでは再始動されません。
-p Path サブシステムの実行可能プログラムでの絶対パスを指定します。
-q サブシステムが複数のインスタンスを同時に実行可能なことを指定します。
-Q サブシステムの複数のインスタンスが同時に実行できないことと、サブシステムが同じプロセス間通信 (IPC) キューを共用できないことを指定します。 -q フラグが指定されない場合に、 -Q フラグがデフォルトです。
-R サブシステムが異常終了した場合に、サブシステムを再始動することを指定します。
-s Subsystem サブシステムを識別する固有の名称を指定します。 サブシステム名が既にサブシステムのオブジェクト・クラスで認識されている場合、mkssys コマンドは異常終了します。
-S サブシステムがシグナル通信方式を使用することを指定します。 通信方式がシグナルの場合、サブサーバーをサブシステム名に定義できません。
-t Synonym サブシステムの代替名を指定します。 同義名が既にサブシステムのオブジェクト・クラスで認識されている場合、mkssys コマンドは異常終了します。
-u UserID サブシステムのユーザー ID を指定します。 サブシステムを作成する UserID は、そのサブシステムのセキュリティー監査に使用されます。
-w Wait 停止取り消し (SIGTERM) シグナルの送信からその次の SIGKILL シグナルの送信までの経過時間を秒単位で指定します。 再始動アクションの制限時間としても使用します。 Wait 値で指定された時間制限内でサブシステムが 3 回以上異常終了した場合、サブシステムは自動的に再始動されません。 -w フラグがない場合、待ち時間のデフォルトは 20 秒です。

セキュリティー

RBAC ユーザーおよび Trusted AIX ユーザーへの注意: このコマンドは特権命令を実行できます。 特権命令を実行できるのは特権ユーザーのみです。 権限および特権についての詳細情報は、「セキュリティー」の『特権コマンド・データベース』を参照してください。 このコマンドに関連した特権および権限のリストについては、lssecattr コマンドまたは getcmdattr サブコマンドの項を参照してください。

監査イベント: 監査サブシステムが適切に構成されていて使用可能であれば、 mkssys コマンドは、実行されるたびに次の監査レコード (イベント) を生成します。

イベント 情報
SRC_Addssys オブジェクト・データ・マネージャー (ODM) データベースに追加されるサブシステムの名前と ODM レコードの全体を監査ログに記録します。

  1. 通信タイプにソケットを使用するサブシステムを追加するには、次のように入力します。
    mkssys  -s srctest  -p /usr/lpp/srctest/srctest  -u 0  -K
    これにより、通信タイプがソケット、ユーザー ID が 0 (ルート)、サブシステムの名前は srctest というサブシステム定義をサブシステム・オブジェクト・クラスに追加します。
  2. 通信タイプにメッセージ・キューを使用するサブシステムを追加するには、次のように入力します。
    mkssys  -s srctest  -p /usr/lpp/srctest/srctest  -u 0  -I 123456 ¥ >  -m 789
    これにより、通信タイプがメッセージ・キュー、 メッセージ・キュー・キーが 123456、 サブシステムのメッセージ・タイプが 789 というサブシステム定義をサブシステム・オブジェクト・クラスに追加します。
  3. 通信タイプにシグナルを使用するサブシステムを追加するには、次のように入力します。
    mkssys  -s srctest  -p /usr/lpp/srctest/srctest  -u 0  -S -n 30 ¥ >  -f 31
    これにより、通信タイプがシグナル、通常停止シグナルが 30、 強制停止シグナルが 31 というサブシステム定義をサブシステム・オブジェクト・クラスに追加します。
  4. 通信タイプにソケットを使用し、必ず引数を渡されるサブシステムを追加するには、次のように入力します。
    mkssys  -s srctest  -p /usr/lpp/srctest/srctest  -u 0  -a "-x"
    これにより、通信タイプがソケット、コマンド引数が "-x" で、サブシステム定義がサブシステムのオブジェクト・クラスに追加されます。

ファイル

項目 説明
/etc/objrepos/SRCsubsys SRC サブシステム構成オブジェクト・クラスを指定します。
/dev/SRC socket.h ファイルの AF_UNIX ドメインを指定します。
/dev/.SRC-unix 一時ファイル・ソケットの位置を指定します。