名前 | 形式 | 機能説明 | オプション | 使用例 | 属性 | 関連項目 | 診断 | 警告 | 注意事項
limadm は、set サブコマンドを使用して指定したユーザーリストのリミットデータベースの制限値を変更するか 、delete サブコマンドを使用してリミットデータベースからエントリを削除します 。どちらのサブコマンドを使用する場合でも、「アクセス権」で説明されている適切な特権が必要です。-a オプションを使用すると、変更可能なリミット属性が表示されます。
たとえば、リミット属性を変更するためには、次のようなコマンドを使用します。
limadm set sgroup=sysprog:cpu.shares=50:flag.uselimadm=set:memory.limit=5.5m user1
上記のコマンドは、user1 用に l ノードを設定し、そのスケジューリンググループの親に sysprog を指定し、完全な管理特権を与え、メモリーの制限を 5.5M バイトに設定します。
limadm は、コロンで区切られたすべての変更を各ユーザーに、指定された順番で適用します。各変更の形式は次のとおりです。属性の名前、演算文字 (加算 (+)、減算(-)、代入 (=) など) と値です。値の型は属性に依存します。読み取り専用の属性は変更できません。
デフォルトでは、getpwent(3C) が各 user 引数をログイン名として解釈します。このようなログイン名がパスワードマップに見つからない場合、user 引数が数値であれば、ユーザー ID として解釈します。
srm(5SRM) に示されている属性だけが変更できます。
次の services.flag 属性を使用して、Solaris Resource Manager 対応ホストのユーザーがさまざまなネットワークサービスやローカルサービスにアクセスするのを有効または無効にできます。
services.flag.su | clear の場合、ユーザーは su コマンドの実行を許可されません。 |
services.flag.xterm | SRM 1.1 または SRM 1.2 には存在しません。SRM 1.0 には影響ありません。 |
services.flag.rsh | このホストへの rsh アクセスを有効または無効にします。 |
services.flag.ftp | このホストへの ftp アクセスを有効または無効にします。 |
services.flag.rlogin | このホストへの rlogin アクセスを有効または無効にします。 |
services.flag.rexec | このホストへの rexec アクセスを有効または無効にします。 |
services.flag.localservices | flag.su のようなすべてのローカルサービスを有効または無効にします。 |
services.flag.netservices | rsh、ftp、rlogin、rexec などのすべてのネットワークサービスを有効または無効にします。 |
次の terminal.flag 属性を使用して、Solaris Resource Manager 対応ホストへの端末アクセスを制御します。
terminal.flag.network | ネットワークからのアクセスを有効または無効にします。 |
terminal.flag.hardwired | モデムのようなケーブル接続装置からのアクセスを有効または無効にします。 |
terminal.flag.console | コンソールからのアクセスを有効または無効にします。 |
terminal.flag.all | すべての terminal.flag フラグを設定またはクリアします。 |
次のフラグ属性を Solaris Resource Manager で使用してプロセスを制御します。
flag.asynckill | これが設定されると Solaris Resource Manager は、l ノードがアクティブでなくなったとき (たとえば、ユーザーがログアウトする)、すべての接続プロセスを強制終了します。これは、ログアウトした後ユーザーにバックグラウンド処理の実行が許されていない場合などに使用できます。 |
flag.asyncnice | これが設定されると Solaris Resource Manager は、他のプロセスの実行時間を上げるため、l ノードに接続されていて、アクティブでなくなったすべてのプロセスの優先度を下げます。 |
flag.noattach | クリアの場合、l ノードの使用が許可されます。これが設定されると、l ノードの使用が拒否されます (プロセスはこの l ノードに接続できません)。 |
次のフラグ属性を使用して、ユーザーとスケジューリンググループ、またはそのどちらかの同時ログイン数を制御できます。(制限を設定せずに、ログイン数を無制限に許可することもできます。)
flag.nologin=set | ログインを許可しません。 |
flag.onelogin=set | 1 ログインを許可します。 |
属性制限から減算するとき、その結果はゼロ以下にならないように調整されます 。その際メッセージは表示されません。これにより、値がラップされなくなり、また意図せずゼロになることもなくなります。ゼロの制限値は「無制限」という特別な意味を持ちます。加算と代入には上限値はありません。
次のリミット属性は現在サポートされていません。
-f オプションを指定すると、limadm は指定されたファイルまたは標準入力からユーザー情報と変更情報を読み取ります。
ファイルの各行はユーザーのログイン名またはユーザー ID 番号で始まり、タブのあとに変更情報が続きます (コマンド行に入力されたものと同じです)。limadm は各行を順番に読み取り、-l オプションと -u オプションによってユーザー名またはユーザー ID を解釈し、そのユーザー情報を変更して一覧表示します。
呼び出し元ユーザーは、指定された変更を指定されたユーザーに実行するための十分な管理特権を持っていなければなりません。特権には 2 つのレベルがあります。
呼び出し元ユーザーがスーパーユーザーであるか、uselimadm フラグが設定されていること。カーネルが変更を許可する任意の l ノード内の任意の属性を変更できます。自動的に作成される l ノードには、デフォルトで srmother の sgroup が与えられます。ただし、このようなログイン名がある場合は、デフォルトで root が与えられます。
呼び出し元ユーザーの admin フラグだけが設定されていて、uselimadm フラグが clear されていること。次の制限が適用されます。
呼び出し元ユーザーが所有するスケジューリンググループのメンバーであるユーザーの l ノードだけを変更できます。
呼び出し元ユーザーのスケジューリンググループのメンバーだけを、呼び出し元ユーザーのスケジューリンググループ内に割り当てることができます。自動的に作成される l ノードには、デフォルトで呼び出し元ユーザーの sgroup が与えられます。
フラグ割り当て。呼び出し元ユーザーのフラグがそのフラグのデフォルト値とは逆である場合、呼び出し元ユーザーは、どのユーザーに対しても、そのフラグの値を別の状態には設定できません。たとえば、呼び出し元ユーザーの uselimadm フラグが clear である場合、呼び出し元ユーザーは他のユーザーの uselimadm フラグを clear または inherit だけに設定できます。
次に、コマンド行オプションを示します。
l ノードのリミット属性を変更します。l ノードがない場合は、自動的に作成されます。
変更可能なすべての属性を標準出力に書き込みます。
l ノードの自動作成を抑制します。つまり、存在しない l ノードについては警告を書き込みます。
ファイルから読み取ります。このオプションに続く引数は、ユーザーと変更情報 (1 行に 1 つずつ) を含むファイル名です。このオプションに続く引数がダッシュ (-) の場合、標準入力から値を読み取ります。詳細は、「ファイル形式」を参照してください。
ユーザーの l ノードを削除します。
強制削除。l ノードに子がある場合でも、その l ノードを強制的に削除します (したがって、その子の l ノードは親のないエントリになります)。
-l と -u は user 引数の解釈方法を決定します。これらは同時に指定することはできません。
user 引数をログイン名としてだけ解釈します (デフォルト)。
user 引数を数値ユーザー ID としてだけ解釈します。このオプションを使用すると、パスワードマップのリストにないユーザー ID も使用できます。
-l と -u は、型が uid の属性に割り当てられた値の解釈方法にも影響を与えます。
limadm set -u flag.admin=set UID1 UID2 UID3
limadm delete user1 user2... userN
limadm -a
すべてのフラグ (たとえば、rsh) を group に設定します。これにより、フラグは services.flag.netservices フラグから値を継承するようになります。(デフォルトでは、フラグのすべては inherit に設定されます。) たとえば、services.flag.ftp を設定するには、次のように入力します。
limadm set services.flag.ftp=group john
次に John についてのネットワークサービスを無効にするには、次のように入力します。
limadm set services.flag.netservices=clear john
ftp へのアクセスだけを John に与えるには、次のように入力します。
limadm set services.flag.ftp=set john
フラグが set 状態の場合、親から値を継承しません (上記の例では、limadm set services.flag.netservices)。
ctime(3C), printf(3C), srm(5SRM)
『Solaris Resource Manager 1.3 のシステム管理』
不明な属性名や属性型をオーバーフローする値について、limadm はエラーメッセージを表示します。コマンド行において、有効な属性名に演算子または値を指定しなかったり、間違った演算子または値を指定したりした場合、limadm はエラーメッセージを書き込み、属性に割り当て可能な値を簡単な形式で示し、終了します。-f フラグを指定すると、limadm は形式が表示されず、ファイルの次の行にスキップします。
不明なログイン名またはユーザー ID 番号を指定した場合、limadm は診断メッセージを書き込み、次の引数または入力ファイルの次の行にスキップします。
リミット属性からの減算は単独の操作ではないため、他のイベントもその属性を変更している場合は、値が負またはゼロになる可能性があります。
加算はオーバーフローを検査しないため、数値属性への加算により、値がメッセージ通知なしにラップされる可能性があります。
記憶領域の単位を表わす数字のあとに文字 m だけが続いている場合、このスケール文字はあいまいであるため、(分ではなく) M バイトであるとみなされます。
integer 型では小数点を使用できます。ただし、小数点を含み、ゼロから始まる数字は 10 進数として解釈され、8 進数の浮動小数点としては解釈されません。
このマニュアルページは、SunOS 5.6、SunOS 5.7、および SunOS 5.8 に適用できます。