Solaris Resource Manager 1.1 のシステム管理

親のない l ノード

「親のない l ノード」とは、存在しない親 l ノードを持つ l ノードです。これは管理者にとって問題です。親のない l ノードや、スケジューリングツリーにおいて親のない祖先を持つ l ノードにはプロセスを接続できません。

カーネルは、スケジューリンググループの親に対する無効な変更によって親のない l ノードが作成されないように、sgroup 属性の変更をチェックします。

l ノードが親のない状態になったときの主な問題は、この l ノードにはプロセスを接続できなくなるということです。この l ノードにはプロセスを接続できないので、この l ノードを使ってログインすることはできません。したがって、対応するアカウントを使ってログインしても失敗します。

親のない l ノードを簡単に検出するには limreport コマンドに組み込まれている親なし識別子を指定します。

% limreport orphan - uid sgroup lname

このコマンドによって、親のない l ノードを持つユーザーのユーザー ID、スケジューリンググループ親、およびログイン名が表示されます。sgroup 属性を使えば、ツリーの親のない部分の一番上の l ノードがどれかがわかります。

親のない l ノードが見つかったら、管理者は、まずスケジューリングツリーの親のない部分の一番上を見つける必要があります。この l ノードを再接続する必要があるからです。親のない部分の一番上を正しく識別しないと、親のない部分の一部だけがツリーに接続されてしまいます。

親のない部分の一番上が判定できたら、適切な特権を持つ管理者であれば、limadm を使って、一番上の親のない l ノードの sgroup 属性にスケジューリングツリー内の有効な l ノードを設定できます。これによって、親のない l ノードは、有効な l ノードが一番上にあるグループのメンバーとしてツリーに再接続されます。limadm を実行すると、新しいスケジューリンググループが動作中になるかどうか検査されます。これによって、変更した l ノードが親のない状態ではないことがわかります。

一方、親のない l ノードの sgroup 属性のユーザー ID と等しいユーザー ID を持つユーザーを新たに作成することもできます。これによって、ツリーの親のない部分が自動的に再接続されます。