目的
uss bulk コマンドの命令を記述します。
構文
uss バルク入力ファイルには、 uss bulk コマンドの実行時に実行される uss コマンド・インタープリターの命令を記述します。ファイルに uss テンプレート・ファイルを参照する add 命令を組み込む場合には、テンプレート・ファイルも存在していなければなりません。
バルク入力ファイルの命令の要約
バルク入力ファイルには、次の命令を記述することができます。1 つの行に 1 つの命令を記述します。このリストの後で、各命令の構文について詳しく説明します。
add 命令は、ユーザー・アカウントを作成します。バルク入力ファイルの各インスタンスは、コマンド行で発行された uss add コマンドと同じ結果になります。命令のフィールドの順序は、uss add コマンドの引き数の順序と同じですが、いくつかの引き数には対応するフィールドがありません。 uss add コマンドの引き数のように、多くフィールドが、uss テンプレート・ファイルの変数に対応しています。各フィールドについては後で説明します。
命令の構文は次のとおりです。読みやすくするために、ここでは複数行に分けて示しますが、実際のバルク入力ファイルでは、add 命令は 1 行で記述しなければなりません。
add username[:full_name][:initial_password][:password_expires] [:file_server][:partition][:mount_point][:uid][:var1][:var2] [:var3][:var4][:var5][:var6][:var7][:var8][:var9][:]
フィールドの値を省略する場合には (フィールドがオプションか、あるいはテンプレートに定数が指定されているため)、コロンの間には何も入力しないでください。最後の引き数を指定したら、コロンと改行を入力するか、あるいは改行のみを入力して、行を終了してください。
各フィールドの意味と許容値は、次のとおりです。
これは、uss add コマンドの引き数 -user に対応します。テンプレート・ファイルの対応する変数は、$USER です。
これは、uss add コマンドの引き数 -realname に対応します。テンプレート・ファイルの対応する変数は、$NAME です。多くのオペレーティング・システムでは、ローカル・パスワード・ファイル (/etc/passwd または同等のファイル) のユーザー項目に完全名を入力するフィールドが用意されています。この変数は、そのフィールドに値を渡すために使用することができます。
これは、uss add コマンドの引き数 -pass に対応します。テンプレート・ファイルで対応する変数はありません。
パスワードが無効 (有効期限切れ) になると、そのユーザーは認証されません。ただし、kpasswd コマンドを発行してパスワードを変更すると、そのパスワードは変更後 30 日までは保持されます。( これは管理者のみが変更可能です。)
これは、uss add コマンドの引き数 -pwexpires に対応します。テンプレート・ファイルで対応する変数は、$PWEXPIRES です。
これは、uss add コマンドの引き数 -server に対応します。テンプレート・ファイルで対応する変数は、$SERVER です。
/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 です。
これは、uss add コマンドの引き数 -mount に対応します。
テンプレート・ファイルの V 命令にある $MTPT のみがテンプレートで対応する変数になります。V 命令の後のテンプレート命令の $MTPT 変数は、V 命令の mount_point フィールドから値を取得します。したがって、文字列 $MTPT が V 命令の mount_point フィールドに単独で使用されている場合に限り、このコマンド行の引き数の値が、V 命令の後の命令にある $MTPT 変数の値になります。
これは、uss add コマンドの引き数 -uid に対応します。テンプレートで対応する変数は $UID です。
これは、 uss add コマンドへの引き数 -var に対応します。テンプレートで対応する変数は、$1 から $9 です。
フィールドに値を指定する場合には、先行するフィールドに実際の値を指定してください。空にする場合には、2 つのコロンの間に何も入力しないでください。実際の値がある最後のフィールドの後にコロンを入力することもできますが、これは必要ありません。
delete 命令は、システムからユーザー・アカウントを削除します。バルク入力ファイルの各インスタンスは、コマンド行で発行された uss delete コマンドと同じ結果になります。命令のフィールドの順序は、uss delete コマンドの引き数の順序と同じです。
delete username:mount_point_path[:{ savevolume | delvolume }][:]
ここで、
最後の引き数を指定したら、コロンと改行を入力するか、あるいは改行のみを入力して、行を終了してください。
コマンドを実行する exec 命令
exec 命令は、指定されたコマンド (UNIX シェル・スクリプトあるいはコマンド、プログラム、または AFS コマンド) を実行します。 uss コマンド・インタープリターは、AFS およびローカル・ファイル・システムの特権が必要となります。これは、 uss bulk コマンドの発行側の AFS および ローカル ID が必要になります。
命令の構文は次のとおりです。
exec command
デフォルトのボリューム処理を設定する delvolume および savevolume 命令
savevolume および delvolume 命令は、バルク入力ファイルでこれらの後にある delete 命令で参照されたボリュームのデフォルト処理を設定します。これらの構文は次のとおりです。
savevolume delvolume
savevolume 命令を使用すると、バルク入力ファイルでこれ以降に delete 命令があっても、ボリュームおよび VLDB 項目が削除されません。delvolume 命令を使用すると、後続の delete 命令でボリュームおよび VLDB 項目が削除されます。この設定を無効にする命令があるまで、この設定は有効になります。このような命令がなければ、バルク・ファイルの最後まで有効になります。
いずれの行もバルク入力ファイルにない場合、デフォルトでは、ボリュームおよび VLDB 項目は削除されます。最初の savevolume 命令の前に delete 命令がある場合には、このデフォルトの設定が適用されます。 delete 命令の 3 番目のフィールド、savevolume または delvolume のいずれかが指定されていれば、このデフォルトは無効になります。
例
次の例は、add 命令で認証のみのアカウントを作成しています。ユーザーの初期パスワードは、changeme (デフォルト)です。
add anderson
次の例は、add 命令で、テンプレート・ファイルの V 命令を参照しています (これは、テンプレート・ファイルでは単一行でなければなりません)。
add smith:John Smith:::fs1:a:::::marketing add jones:Pat Jones:::fs3:c:::::finance V user.$USER $SERVER.abc.com /vicep$PART 2000 \ /afs/abc.com/usr/$3/$USER $UID $USER all
最初の add 命令により、初期パスワード changeme と保護サーバーによって提供された $UID に値を持つ smith というアカウントを、保護データベースおよび認証データベースに作成しています。ボリューム user.smith は、ファイル・サーバー・マシン fs1.abc.com の区画 /vicepa にあり、 /afs/abc.com/usr/marketing/smith にマウントされます。このアカウントには自分のホーム・ディレクトリーがあり、そのルート・ディレクトリーのアクセス制御リスト (ACL) ですべてのアクセス権が許可されています。 jones のアカウントも同様ですが、このボリュームはファイル・サーバー・マシン fs3.abc.com の区画 /vicepc にあり、/afs/abc.com/usr/finance/jones にマウントされます。
ボリュームのマウント・ポイント、UID、$1 変数、および $2 変数に対応するフィールド(サンプルの先頭行の a と marketing の間) は空になっています。これは、対応する変数がテンプレート・ファイルにないためです。初期パスワードのフィールドも空になっています。
次の add 命令は前の例と同じ結果になりますが、値のない番号変数に空のフィールドを明示的に指定しています。
add smith:John Smith:::fs1:a:::::marketing:::::: add jones:Pat Jones:::fs3:c:::::finance::::::
次の例は、delete 命令と savevolume 命令のセットがある完全なバルク入力ファイルの例です。ユーザー smith、pat、および rogers に対する delete 命令が savevolume 命令の前にあり、3 番目のフィールドがすべて空になっているので、該当するホーム・ボリュームは削除されます。 savevolume 命令で設定されたデフォルトが適用されるので、ユーザー terry のボリュームは保存されますが、ユーザー johnson のボリュームは、その delete 命令の 3 番目のフィールドで現在のデフォルトが無効になるので、削除されます。
delete smith:/afs/abc.com/usr/smith delete pat:/afs/abc.com/usr/pat delete rogers:/afs/abc.com/usr/rogers savevolume delete terry:/afs/abc.com/usr/terry delete johnson:/afs/abc.com/usr/johnson:delvolume
次の例は、add 命令と delete 命令の間に exec 命令があるバルク入力ファイルの例です。追加操作が完了し、削除操作が開始すると、uss bulk コマンドが発行された コマンド・シェルに次のメッセージが表示されます。
exec echo "Additions completed; beginning deletions..."
関連情報