# 管理解説書

## uss テンプレート・ファイル

目的

uss add コマンドの命令を記述します。

構文

uss テンプレート・ファイルには、 uss add コマンド (または uss バルク入力ファイルの add 命令) で作成した AFS ユーザー・アカウントのコンポーネントを定義します。テンプレート・ファイルを指定する場合には、 -template 引き数を uss add または uss bulk コマンドに使用してください。

テンプレート・ファイルの命令の要約

テンプレート・ファイルには、次の命令を記述することができます。1 つの行に 1 つの命令を記述します。このリストの後で、各命令の構文について詳しく説明します。

A
  ユーザー・パスワードおよび認証に対して制限を設定します。

D
  ディレクトリーを作成します。

E
  単一行ファイルを作成します。

F
  プロトタイプをコピーしてファイルを作成します。

G
  親ディレクトリーのセットに属するディレクトリーを定義します。 uss コマンド・インタープリターは、このディレクトリーに新規に作成されたホーム・ディレクトリーを配布します。

L
  ハード・リンクを作成します。

S
  シンボリック・リンクを作成します。

V
  ボリュームを作成し、ファイル・スペースにマウントして、そのマウント・ポイントに ACL を設定します。

X
  コマンドを実行します。

テンプレート・ファイルが空 (ゼロ長) の場合、 uss add コマンドまたはバルク入力ファイルの add 命令は、保護および認証データベースに項目を作成し、uss add コマンドの -user 引き数、あるいはバルク入力ファイルの add 命令の username フィールドに指定された名前に従って、名前を定義するだけです。

デフォルトのボリューム処理を設定する A 命令

uss テンプレート・ファイルの A 命令は、ユーザーのパスワード選択や認証の試行回数に対して次の制限を設定し、セルのセキュリティーを向上させます。この制限の詳細については、AFS 管理の手引き および kas setfields の解説ページを参照してください。

- ユーザーのパスワードの存続時間を限定します。存続時間が切れると、ユーザーは、そのパスワードでは認証されなくなります。この場合、パスワードを変更しなければなりません。
- ユーザーが最近使用したパスワードで、再使用できるパスワードを 20 までに限定しています。
- 認証中にユーザーが無効なパスワードを入力したときの再入力できる回数に制限があります。また、認証サーバーが待機する時間も制限されています。この制限時間を超えると、認証サーバーはそれ以降の認証要求を拒否します (アカウント・ロックアウト ともいいます)。通常のユーザー・アカウントであれば、試行回数を 9 回、ロックアウト時間を 25 分に設定することをお勧めします。

この命令の構文は、次のとおりです。

          A  username  password_lifetime  password_reuse  failures  locktime

ここで、

A
  セキュリティー強化命令を示します。これは大文字でなければなりません。

username
  セキュリティー制限を設定する認証データベース項目を指定します。ユーザー名を uss add コマンドの -user 引き数、またはバルク入力ファイルの add 命令の username フィールドからユーザー名を読み取るための値 $USER を指定してください。

password_lifetime
  ユーザーのパスワードが変更された場合に、変更後の有効期限を指定します。パスワードが無効 (有効期限切れ) になると、そのユーザーは認証されません。ただし、kpasswd コマンドを発行してパスワードを変更すると、そのパスワードは変更後 30 日までは保持されます。( これは管理者のみが変更可能です。)

  有効期限までの日数を指定する場合には、1 から 254 までの整数を指定してください。パスワードに有効期限を設定しない場合には、0 を指定してください。日数を uss add または uss bulk コマンドの -pwexpires 引き数から読み取る場合には、 $PWEXPIRES を指定してください。テンプレート・ファイルに A 命令がない場合には、デフォルトで、ユーザーのパスワードに有効期限は設定されません。

password_reuse
  ユーザーが自分のパスワードを最近使用した 20 個のパスワードに似ているものに変更できるかどうかを指定します。(パスワードの変更は、 kpasswd または kas setpassword コマンドで行います。) 再利用を許可する場合には reuse を、禁止する場合には noreuse を指定してください。テンプレート・ファイルに A 命令がない場合には、デフォルトで、パスワードの再利用は許可されます。

failures
  認証時にユーザーが無効なパスワードを入力できる回数を指定します。(klog コマンドか、AFS トークンを付加する login ユーティリティーを使用します。) 設定された回数を超えると、認証サーバーは、locktime フィールドに指定された時間が経過するまで、認証要求を拒否します。

  失敗回数を指定する場合には、1 から 254 までの整数を指定してください。失敗回数に制限を設定しない場合には、0 を指定してください。テンプレート・ファイルに A 命令がない場合には、デフォルトで、失敗回数に制限は設定されません。

locktime
  failures フィールドに設定された制限を超えてから、認証サーバーが認証要求を拒否し続ける時間を指定します。

  時間と分 (hh:mm)、または分 (mm) だけを、01 (1 分) から 36:00 (36 時間) の範囲から指定します。36:00 より大きい値を指定すると、認証サーバーは自動的に値を最大値に変更します。また、ゼロ以外の値を指定すると、次の 8.5 分の倍数まで繰り上げます。0 (ゼロ) を設定すると、ロックアウト時間は無限になります。この場合、管理者が kas unlock コマンドを発行して、アカウントのロックを解除しなければなりません。

ディレクトリーを作成する D 命令

uss テンプレート・ファイルの D 命令はディレクトリーを作成します。これは、テンプレート・ファイルの V 命令で作成されたユーザーのホーム・ディレクトリーにサブディレクトリーを作成します。

テンプレート・ファイルには、複数の D 命令を記述することができます。この命令の変数の値が V 命令 ($MTPT 変数) から取得される場合には、この命令を V 命令の後に記述する必要があります。

D 命令を使用して、 uss コマンドを発行したマシンのローカル・ディスクにディレクトリーを作成することもできますが、これはお勧めしません。ローカル・ディスクに自動的にディレクトリーを作成する場合には、 package プログラムを使用してください。 pathname フィールドにローカル・ディスクのディレクトリーを指定すると、次の 2 つの複雑な問題が生じます。

- ローカル・ディスクのディレクトリーをアクセス制御リスト (ACL) に関連付けることができないため、uss コマンドは警告メッセージを出力します。ただしディレクトリーは作成されます。また、構文的に正しい何らかの値が命令の ACL フィールドに表示されます。
- コマンドの発行側以外のユーザーを新しいディレクトリーの所有者に指定するには、コマンドの発行側は、ローカル・スーパーユーザー root として、マシンにログオンしていなければなりません。デフォルトの所有者を変更するために、uss コマンド・インタープリターは、UNIX の chown コマンドを呼び出します。(ディレクトリーの作成者が所有者になります。この場合には、uss コマンドの発行元になります。) ローカル・ディスクのディレクトリーの場合、このコマンドが発行できるのは root ユーザーだけです。また、コマンドの発行側は、uss add または uss bulk コマンドで -admin を使用し、特権 AFS 管理者として認証される必要があります。この特権がないと、 uss コマンド・インタープリターで作成されたアカウントの項目を認証データベースおよび保護データベースに作成することができません。

この命令の構文は、次のとおりです。

       D  pathname  mode_bits  owner  ACL

ここで、

D
  ディレクトリーを作成することを指定します。これは大文字でなければなりません。

pathname
  ディレクトリーの完全パス名を指定します。変数を指定することもできます。

  ディレクトリーへの読み取り / 書き込みパスを指定して、新規のディレクトリーを読み取り専用ボリュームに作成しようとして生ずる障害を回避してください。読み取り / 書き込みパスは、パス名の第 2 レベルでセル名の前にピリオドを付けて表すきまりになっています (たとえば、 /afs/.example.com)。ファイル・スペースを介しての読み取り / 書き込みおよび読み取り専用パスの概念についての詳細は、 fs mkmount コマンドの解説ページを参照してください。

mode_bits
  ディレクトリーの UNIX モード・ビットを設定します。許容値は、アクセス権の組み合わせに対応する標準的な 3 または 4 桁の数字です。例: 755 は rwxr-xr-x を、644 は rw-r--r-- を意味しています。最初の (所有者) x ビットがオンでないと、ディレクトリーにアクセスできません。

owner
  UNIX の ls -ld コマンドの出力にディレクトリーの所有者であることを示すためのユーザーのユーザー名、または UNIX のユーザー ID (UID) を指定します。ディレクトリーが AFS に常駐している場合には、$UID 変数をこのフィールドに指定してください。ディレクトリーがローカル・ディスクにある場合、uss コマンドの発行側がローカル・スーパーユーザー root としてログインしていない限り、コマンドの発行側のユーザー名または UID を指定してください。

ACL
  新規ディレクトリーに ACL を設定します。新しいディレクトリーがローカル・ディスクにある場合には必須です。AFS の場合には無視されます。 AFS ユーザー名またはグループ名とそのアクセス権を、この順序で組み合わせて値を指定してください。複数を値を指定することができます。値の対の間にはスペースを入れてください。使用可能なアクセス権については、fs setacl の解説ページを参照してください。

  AFS ディレクトリーの場合、少なくともディレクトリーの所有者にはすべてのアクセス権を許可してください。通常、これは新規ユーザーになるので、$USER all を使用してください。

  uss コマンドの発行側にはアクセス権を設定することができません。アカウント作成の最後のステップで、uss コマンド・インタープリターは、作成プロセスで設定した ACL からこのユーザーを自動的に削除します。

単一行ファイルを作成する E 命令

uss テンプレート・ファイルの E 命令は、指定された文字列をエコーして、ファイルを作成します。これは、テンプレート・ファイルの V 命令で作成されたユーザーのホーム・ディレクトリーまたは D 命令で作成されたサブディレクトリーにファイルを作成します。

テンプレート・ファイルには、複数の E 命令を記述することができます。ファイルが D 命令で作成されたディレクトリーにある場合、E 命令は D 命令の後になければなりません。

E 命令と F 命令は、相補的な利点があります。 E 命令でファイルにエコーされた文字列には、 uss コマンド・インタープリターが、 uss add コマンドの引き数またはバルク入力ファイルの add 命令に指定された値に置換する標準的な変数が含まれているので、この文字列はユーザーごとにカスタマイズすることができます。逆に、 F 命令で作成されたファイルには変数を入れることができないため、その内容はすべてのユーザーに共通したものになります。ただし、文字列に改行を入れることができないため、 E 命令で作成されたファイルは、1 行のみのファイルになります。

E 命令を使用して、 uss コマンドを発行したマシンのローカル・ディスクにファイルを作成することもできますが、これはお勧めしません。ローカル・ディスクに自動的にファイルを作成する場合には、 package プログラムを使用してください。コマンドの発行側以外のユーザーを新しいファイルの所有者に指定する場合には、ローカル・スーパーユーザー root として、マシンにログオンしていなければなりません。デフォルトの所有者を変更するために、uss コマンド・インタープリターは、UNIX の chown コマンドを呼び出します。(ファイルの作成者が所有者になります。この場合には、uss コマンドの発行元になります。) ローカル・ディスクのファイルの場合、このコマンドが発行できるのは root ユーザーだけです。また、コマンドの発行側は、uss add または uss bulk コマンドで -admin を使用し、特権 AFS 管理者として認証される必要があります。この特権がないと、 uss コマンド・インタープリターで作成されたアカウントの項目を認証データベースおよび保護データベースに作成することができません。

この命令の構文は、次のとおりです。

       E  pathname  mode_bits  owner  "contents"

ここで、

E
  ファイルを作成することを指定します。これは大文字でなければなりません。

pathname
  ファイルの完全パス名を指定します。変数を指定することもできます。

  ファイルへの読み取り / 書き込みパスを指定して、新規のファイルを読み取り専用ボリュームに作成しようとして生ずる障害を回避してください。読み取り / 書き込みパスは、パス名の第 2 レベルでセル名の前にピリオドを付けて表すきまりになっています (たとえば、 /afs/.example.com)。ファイル・スペースを介しての読み取り / 書き込みおよび読み取り専用パスの概念についての詳細は、 fs mkmount コマンドの解説ページを参照してください。

mode_bits
  ファイルの UNIX モード・ビットを設定します。許容値は、アクセス権の組み合わせに対応する標準的な 3 または 4 桁の数字です。例: 755 は rwxr-xr-x を、644 は rw-r--r-- を意味しています。

owner
  UNIX の ls -l コマンドの出力にファイルの所有者であることを示すためのユーザー名、または UNIX のユーザー ID (UID) を指定します。ファイルが AFS に常駐している場合には、$UID 変数をこのフィールドに指定してください。ファイルがローカル・ディスクにある場合、uss コマンドの発行側のユーザー名または UID を指定してください。そうでないと、アカウント作成操作はすぐに停止します。

contents
  新規ファイルに書き込む 1 行の文字列を指定します。 1 つまたは複数のスペースがある場合には、文字列全体を二重引用符で囲んでください。この文字列の中には、改行は入れることができませんが、コマンド・インタープリターがファイルの作成時に解決する標準の変数を入れることができます。

プロトタイプからファイルを作成する F 命令

uss テンプレート・ファイルの F 命令は、既存のファイルの内容 (プロトタイプ) をコピーして、ファイルを作成します。これは、テンプレート・ファイルの V 命令で作成されたユーザーのホーム・ディレクトリーまたは D 命令で作成されたサブディレクトリーにファイルを作成します。

テンプレート・ファイルには、複数の F 命令を記述することができます。ファイルが D 命令で作成されたディレクトリーにある場合、F 命令は D 命令の後になければなりません。

E 命令と F 命令は、相補的な利点があります。 E 命令で作成されたファイルに変数がある場合には、ユーザーごとにカスタマイズすることができますが、F 命令で作成されたファイルの内容はすべてのユーザーに共通したものになります。ただし、E 命令で作成されたファイルは、1 行のみのファイルになりますが、F 命令でコピーされたプロトタイプ・ファイルは任意の長さにすることができます。

F 命令を使用して、 uss コマンドを発行したマシンのローカル・ディスクにファイルを作成することもできますが、これはお勧めしません。ローカル・ディスクに自動的にファイルを作成する場合には、 package プログラムを使用してください。コマンドの発行側以外のユーザーを新しいファイルの所有者に指定する場合には、ローカル・スーパーユーザー root として、マシンにログオンしていなければなりません。デフォルトの所有者を変更するために、uss コマンド・インタープリターは、UNIX の chown コマンドを呼び出します。(ファイルの作成者が所有者になります。この場合には、uss コマンドの発行元になります。) ローカル・ディスクのファイルの場合、このコマンドが発行できるのは root ユーザーだけです。また、コマンドの発行側は、uss add または uss bulk コマンドで -admin を使用し、特権 AFS 管理者として認証される必要があります。この特権がないと、 uss コマンド・インタープリターで作成されたアカウントの項目を認証データベースおよび保護データベースに作成することができません。

この命令の構文は、次のとおりです。

          F  pathname  mode_bits  owner  prototype_file

ここで、

F
  ファイルを作成することを指定します。これは大文字でなければなりません。

pathname
  ファイル名を含めて、作成するファイルの全パス名を指定します。変数を指定することもできます。

  ファイルへの読み取り / 書き込みパスを指定して、新規のファイルを読み取り専用ボリュームに作成しようとして生ずる障害を回避してください。読み取り / 書き込みパスは、パス名の第 2 レベルでセル名の前にピリオドを付けて表すきまりになっています (たとえば、 /afs/.example.com)。ファイル・スペースを介しての読み取り / 書き込みおよび読み取り専用パスの概念についての詳細は、 fs mkmount コマンドの解説ページを参照してください。

mode_bits
  ファイルの UNIX モード・ビットを設定します。許容値は、アクセス権の組み合わせに対応する標準的な 3 または 4 桁の数字です。例: 755 は rwxr-xr-x を、644 は rw-r--r-- を意味しています。

owner
  UNIX の ls -l コマンドの出力にファイルの所有者であることを示すためのユーザー名、または UNIX のユーザー ID (UID) を指定します。ファイルが AFS に常駐している場合には、$UID 変数をこのフィールドに指定してください。ファイルがローカル・ディスクにある場合、uss コマンドの発行側のユーザー名または UID を指定してください。そうでないと、アカウント作成操作はすぐに停止します。

prototype_file
  コピーするプロトタイプ・ファイルを格納する AFS またはローカル・ディスク・ディレクトリーを指定します。プロトタイプ・ファイルの名前は、 pathname フィールドの最後の要素と一致していなければなりません。

ホーム・ディレクトリーを均等に配布する G 命令

uss テンプレート・ファイルの G 命令は、uss コマンド・インタープリターが新規ユーザーのホーム・ディレクトリーの親ディレクトリーを選択するときに候補となるディレクトリーとして、ディレクトリーを作成します。具体的にいえば、V 命令の mount_point フィールドに $AUTO 変数がある場合、コマンド・インタープリターはその変数を、G 命令で定義され、現在最も項目の少ないディレクトリーで置き換えます。

この命令は、分類 (部門分割など) を反映したディレクトリーを使用せずに、ユーザー・アカウントをいくつかのディレクトリーに均等に配布することを目的としています。このようにホーム・ディレクトリーを配布する方法は、特に大規模なセルに有効です。すべてのユーザー・ホーム・ディレクトリーを 1 つの親ディレクトリーの下に格納すると、ディレクトリー検索が遅くなったり、ワークスペースに合わせて分割をすると、ディレクトリー・サイズに不均衡が生じ、ユーザーによっては、ディレクトリーを検索したときに速度が遅くなる場合があります。詳細については、AFS 管理の手引き で uss に関する章を参照してください。

テンプレート・ファイルには、複数の G 命令を記述することができます。 V 命令に $AUTO 変数がある場合、この命令は、ファイルの中ですべての G 命令の後になければなりません。

この命令の構文は、次のとおりです。

          G  directory

ここで、

G
  $AUTO 変数の値となるディレクトリーを作成する命令を示します。これは大文字でなければなりません。

directory
  ディレクトリーの名前を完全なパス名または部分的なディレクトリーで指定します。選択した項目によって、V 命令の mount_point フィールドに適した値が異なります。詳細については、次のサンプルを参照してください。

  ディレクトリーへの読み取り / 書き込みパスを指定して、 $AUTO 変数が V 命令の mount_point フィールドで使用されている場合に、新規のマウント・ポイントを読み取り専用ボリュームに作成しようとして生ずる障害を回避してください。読み取り / 書き込みパスは、パス名の第 2 レベルでセル名の前にピリオドを付けて表すきまりになっています (たとえば、/afs/.example.com)。ファイル・スペースを介しての読み取り / 書き込みおよび読み取り専用パスの概念についての詳細は、 fs mkmount コマンドの解説ページを参照してください。

リンクを作成する L および S 命令

uss テンプレート・ファイルの L 命令は、2 つのファイル間のハード・リンクを作成します。これは、UNIX の 標準の ln コマンドと同じです。 S 命令は、2 つのファイル間のシンボリック・リンクを作成します。これは、UNIX の標準の ln -s コマンドと同じです。このドキュメントではリンクについて詳しく説明しませんが、リンクの基本的な機能は、既存のファイルに別の名前を作成し、いずれの名前でアクセスできるようにすることです。リンクを作成することと、ファイルのコピーを作成することは違います。

AFS は、リンクされたファイルが同一ディレクトリー内に常駐している場合にのみハード・リンクを許可します。これは、2 つのコピーが異なる ACL を持つ複数のディレクトリーに常駐している場合、どのアクセス制御リスト (ACL) がファイルに適用されているかの判別が困難になるためです。 AFS では、異なるディレクトリーまたは異なるボリュームにあるファイルにシンボリック・リンクを作成することはできます。ファイル・サーバーは、リンクではなく、実際のファイルに関連付けられている ACL を使用します。

テンプレート・ファイルには、複数の L および S 命令を記述することができます。既存のファイルまたはリンクが D 命令で作成されたディレクトリーにある場合、あるいは既存のファイルが E または F 命令で作成されている場合には、L または S 命令は、D、 E、または F 命令の後になければなりません。

これら命令の構文は次のとおりです。

       L  existing_file  link
       S  existing_file  link

ここで、

L
  ハード・リンクを作成することを指定します。これは大文字でなければなりません。

S
  シンボリック・リンクを作成することを指定します。これは大文字でなければなりません。

existing_file
  既存のファイルの完全なパス名を指定します。

link
  ファイルの別名を完全なパス名で指定します。

  リンクへの読み取り / 書き込みパスを指定して、新規のリンクを読み取り専用ボリュームに作成しようとして生ずる障害を回避してください。読み取り / 書き込みパスは、パス名の第 2 レベルでセル名の前にピリオドを付けて表すきまりになっています (たとえば、/afs/.example.com)。ファイル・スペースを介しての読み取り / 書き込みおよび読み取り専用パスの概念についての詳細は、 fs mkmount コマンドの解説ページを参照してください。

ボリュームを作成し、マウントする V 命令

uss テンプレート・ファイルの V 命令は、指定されたファイル・サーバー・マシンおよび区画にボリュームを作成し、その項目をボリューム・ロケーション・データベース (VLDB) に作成します。さらに、そのボリュームをユーザーのホーム・ディレクトリーになる AFS ファイル・スペースにマウントし、ディレクトリーの所有者を指定して、そのアクセス制御リスト (ACL) を設定します。

テンプレート・ファイルの中では、V 命令は 1つしか使用できません。また、テンプレート・ファイルに命令がある場合 (空ではない) には、この命令は必須です。他の命令はすべてオプションです。ただし、$AUTO 変数がテンプレートにある場合には、G 命令は必須です。 (V 命令は、必ずしもテンプレートの最初の行にある必要はありません。テンプレートに $AUTO 変数がある場合には、その変数に値を割り当てる G 命令が、ファイル内のその変数の前になければなりません。)

この命令の構文は、次のとおりです。

       V  volume_name  server  partition  quota  mount_point owner  ACL

ここで、

V
  ボリュームを作成することを指定します。これは大文字でなければなりません。

volume_name
  ボリュームの名前を指定します。 AFS ユーザー・ボリューム名の規則に従う場合には、 user.$USER と指定してください。 $USER 変数の値は、uss add コマンドの -user 引き数に指定するか、バルク入力ファイルの add 命令の username フィールドに指定してください。

server
  新規ユーザーのボリュームを作成するファイル・サーバー・マシンを指定します。完全修飾されたホスト名 (たとえば、fs1.example.com) を指定してください。セルのネーム・サービスがボリュームの作成時に解決可能であれば、省略形を使用することもできます。uss add コマンドの -server 引き数から値を読み取る場合には、 $SERVER を指定してください。

partition
  ユーザーのボリュームを作成する区画を指定します。server フィールドに指定したファイル・サーバー・マシン上の区画を指定してください。区画は、完全名 (たとえば /vicepa) で指定することも、以下の省略形の 1 つで指定することもできます。

         /vicepa     =     vicepa      =      a      =      0
         /vicepb     =     vicepb      =      b      =      1

  /vicepz (これのインデックスは 25 です) の後には、以下が続きます。

         /vicepaa    =     vicepaa     =      aa     =      26
         /vicepab    =     vicepab     =      ab     =      27

  次の値まで、以下同様となります。

         /vicepiv    =     vicepiv     =      iv     =      255

  uss add コマンドの -partition 引き数から値を読み取る場合には、 $PART を指定してください。

quota
  ファイル・サーバー・マシンのディスク上でボリュームが占有できる最大ブロック数をキロバイト単位で設定します。すべてのボリュームに同じ割り当て量を設定する場合には、整数の定数を指定してください (1024 が 1 MB です)。ボリュームごとに異なる値を割り当てる場合には、いずれかの番号変数 ($1 から $9 まで) を使用してください。

mount_point
  ボリュームにマウント・ポイントを作成します。これは、ボリュームのルート・ディレクトリーになります。ユーザー・ホーム・ディレクトリー名にユーザー名を入れる場合には、パス名の一部に $USER 変数を使用してください。

  マウント・ポイントへの読み取り / 書き込みパスを指定して、新規のマウント・ポイントを読み取り専用ボリュームに作成しようとして生ずる障害を回避してください。読み取り / 書き込みパスは、パス名の第 2 レベルでセル名の前にピリオドを付けて表すきまりになっています (たとえば、/afs/.example.com)。 $AUTO 変数がこのフィールドに存在する場合には、 G 命令で指定したディレクトリーにすでに読み取り / 書き込みパスが指定されている場合があります。ファイル・スペースを介しての読み取り / 書き込みおよび読み取り専用パスの概念についての詳細は、 fs mkmount コマンドの解説ページを参照してください。

  注: | このフィールドに $MTPT 変数があると、その値は uss add コマンドの -mount 引き数か、バルク入力ファイルの add 命令 の mount_point フィールドから取得されます。ただし、後続の命令に $MTPT 変数を使用すると (通常、D、 E、または F 命令に続いて)、このフィールドの完全な内容がその変数の値になります。

owner
  UNIX の ls -ld コマンドの出力にマウント・ポイントの所有者であることを示すためのユーザーのユーザー名、または UNIX のユーザー ID (UID) を指定します。ホーム・ディレクトリーの所有権の規約に従うには、このフィールドに値 $UID を使用してください。

ACL
  新規ディレクトリーに ACL を設定します。 AFS ユーザー名またはグループ名とそのアクセス権を、この順序で組み合わせて値を指定してください。複数を値を指定することができます。値の対の間にはスペースを入れてください。使用可能なアクセス権については、fs setacl の解説ページを参照してください。

  少なくとも新規のユーザーには、すべてのアクセス権を許可してください。適切な値は $USER all です。

  AFS は、system:administrators グループにすべてのアクセス権を自動的に許可します。uss コマンドの発行側にはアクセス権を設定することができません。アカウント作成の最後のステップで、uss コマンド・インタープリターは、作成プロセスで設定した ACL からこのユーザーを自動的に削除します。

コマンドを実行する X 命令

uss テンプレート・ファイルの X 命令は、指示されたコマンドを実行します。このコマンドは、標準 UNIX または AFS コマンドを含みます。このコマンドは、テンプレート・ファイルからすべての変数を含むことができます。この変数は、他の適切なコマンド・インタープリターにそのコマンドを渡す前に、 uss コマンド・インタープリターが解決します。ただし、このコマンドは単一行に限ります (改行または改行文字を含むことはできません)。

テンプレート・ファイルには、複数の X 命令を記述することができます。命令が、他の命令が作成した要素を操作する場合には、その命令は、そのファイルのその要素を作成した命令に従う必要があります。

この命令の構文は、次のとおりです。

       X "command"

ここで、

X
  コマンド実行命令であることを示しています。これは大文字でなければなりません。

コマンド
  実行するコマンドを指定します。 1 つまたは複数のスペースがある場合には、上記のように文字列全体を二重引用符で囲んでください。改行を除く、テンプレート・ファイルからのすべての変数を含むことができます。

例

次の A 命令の例は、254 日のパスワード存続時間を設定し、パスワードの再利用を禁止し、連続認証失敗回数を 9 回に制限し、対応するロック時間を 25:30 分 (8.5 分の倍数) に設定します。ユーザー名は、uss add コマンドの -user 引き数から、またはバルク入力ファイルの各 add 命令の username フィールドから、読み取られます。

       A $USER 254 noreuse 9 25:30

次の D 命令の例は、新規ユーザーのホーム・ディレクトリーに public というディレクトリーを作成し、そのユーザーをディレクトリーの所有者として指定して、そのユーザーにすべての ACL アクセス権を許可します。

       D $MTPT/public 0755 $UID $USER all

次の E 命令の例は、 username.etcp という現行作業ディレクトリーにファイルを作成します。その内容は、セルのグローバル /etc/password ファイルに取り込み可能な項目です。

       E  $USER.etcp  0644 root "$USER:X:$UID:10:$NAME:$MTPT:/bin/csh"

次の F 命令は、ABC 社のセルを例にとると、プロトタイプ .login ファイルをユーザーのホーム・ディレクトリーにコピーします。

       F $MTPT/.login 0644 $UID /afs/example.com/common/uss/skel/.login

次の例では、州立大学のセルの管理者が、ユーザーのホーム・ディレクトリーを 3 つのディレクトリーに公平に分配することを決定しました。管理者は、以下の 3 つの G 命令を定義します。

       G usr1
       G usr2
       G usr3

次に、V 命令の mount_point フィールドに、以下の値を書き込みます。

       /afs/example.org/$AUTO/$USER

または、以下の G 命令のように、ディレクトリー全体のパス名を組み込む場合があります。

       G /afs/example.org/usr1
       G /afs/example.org/usr2
       G /afs/example.org/usr3

この場合には、次に、V 命令の mount_point フィールドに、次の行だけを指定します。

       $AUTO/$USER

次の L 命令の例は、ユーザーのホーム・ディレクトリーに、 mail および mbox ファイル間で、ハード・リンクを作成します。

       L $MTPT/mbox $MTPT/mail

次の S 命令の例は、ABC 社のセルを例にとると、ユーザーのホーム・ディレクトリーの Mail/outgoing ファイルを、 /afs/example.com/common/mail/outgoing ファイルにリンクします。

       S /afs/example.com/common/mail/outgoing $MTPT/Mail/outgoing

次の V 命令の例は、指定されたファイル・サーバー・マシンの /vicepa パーティション上に、 user.username というボリュームを作成し、このボリュームに 3000 KB ブロックの割り当て量を割り当てます。マウント・ポイントは /afs/example.com/usr で、 username ($USER 変数の値) に一致します。そのユーザーは、ホーム・ディレクトリーを所有し、そのディレクトリーへの全アクセス権があります。この命令は、読みやすさのために 2 行になっていますが、テンプレート・ファイル内では単一行でなければなりません。

       V user.$USER $SERVER.example.com /vicepa 3000   \
            /afs/example.com/usr/$USER $UID $USER all

次の X 命令の例は、 OldFiles サブディレクトリーに、ユーザーのボリュームのバックアップ・バージョンをマウントします。

       X "fs mkm /afs/example.com/usr/$USER/OldFiles   user.$USER.backup"

関連情報

uss バルク入力ファイル

fs mkmount

uss add

uss bulk

[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]

(C) IBM Corporation 2000. All Rights Reserved