目的
AFS コマンドの概要
構文
AFS には、ユーザーとシステム管理者がその機能を使用し、カスタマイズできるようにする、多くのコマンドがあります。コマンドの多くは、コマンド・セット と呼ばれる以下のカテゴリーに属しています。
さらに、コマンド・セットに属さないコマンドがいくつかあります。
コマンド・セットに属する AFS コマンドは、以下の構造をしています。
command_suite operation_code -switch <value>[+] [-flag]
全体として、command_suite と operation_code で、 コマンド名 を構成します。
command_suite は、コマンドが属する関連したコマンドのグループを指定します。この名前は、サーバー・プロセスがコマンドを実行するときに使用するコマンド・インタープリターを示します。 AFS には、bos、fs、 kas、package、 pts、scout、 uss および vos を含むいくつかのコマンド・セットがあります。これらのコマンド・セットの中には対話モードを持つセットがありますが、その場合は、コマンド名から command_suite の部分が省略されます。
operation_code は、実行するアクションを、コマンド・インタープリターおよびサーバー・プロセスに知らせます。ほとんどのコマンド・セットには、いくつかの操作コードが組み込まれています。 AFS 管理解説書 では、各操作の詳細を説明し、AFS 管理の手引き では、管理用タスクを実行するコンテキストでその使用法について説明します。
一部の AFS コマンドはコマンド・セットに属していないため、名前に command_suite 部分がありません。それ以外の構造は、コマンド・セットに属する他のコマンドに似ています。
オプション という用語は、引き数とフラグの両方を指します。これらについては、以下のセクションで説明します。
コマンド名の後ろには 1 つまたは複数の引き数が付きます。この引き数によって、コマンドの実行中に影響を及ぼすエンティティー (たとえば、どのサーバー・マシン、サーバー・プロセス、またはファイルに影響を及ぼすか) を指定します。エラーが発生する可能性を最小限に抑えるため、構文定義で説明されている順にコマンドの引き数を指定するようお勧めします。
引き数にはそれぞれ 2 つの部分があり、それぞれが表示される順序は次のように規定されています。
一部の引き数は、複数の値を受け入れます。コマンドの説明やオンライン・ヘルプでは、これらの引き数の後ろに正符号 (+) を付けて、複数の値を受け入れることを示しています。この複数の値を受け入れる引き数の数と、他の引き数との関係におけるそれらの引き数の順序は、いつスイッチの省略が可能になるかに影響します。 スイッチを省略するための条件 を参照してください。
コマンドの中には、必須の引き数だけでなく、任意選択の引き数をもつものがあります。コマンドの説明およびオンライン・ヘルプでは、任意選択の引き数を大括弧 ([ ]) で示しています。
コマンドの中には、1 つ以上のフラグをもつものがあります。これは、コマンド・インタープリターおよびサーバー・プロセスがコマンドを実行する形式、または作成する出力の種類を指定します。フラグの前には、スイッチと同様ハイフンがつきますが、値は取りません。一般に、コマンドの説明とオンライン・ヘルプでは、引き数のあとにそのコマンドのフラグをリストしますが、フラグの場合、順序は規定されません。フラグは、スイッチとその値の間を除いて、操作コードの後のコマンド行の任意の場所に表示できます。フラグは、いつも任意選択です。
次のコマンドの例では、 AFS コマンド・セットに属しているコマンドの各部分を示しています。
% bos getdate -server fs1.abc.com -file ptserver kaserver
説明:
各 AFS コマンドを 1 つの行に入力します (<Return> は、コマンドが終わるまで押しません)。本書のコマンドの中には、複数行にわたって分割されて表示されるものがありますが、それは、印刷上の都合によるものです。
スペースを使用して、コマンド行の各要素を隣り合うものから分離します。また、引き数の複数の値を分離する際も、コンマではなくスペースを使用します。
以下の方法のどちらかまたは両方を使用すると、多くの場合、コマンド行で必要な入力を減らすことができます。
以下のセクションでは、コマンド行の各部分の省略または短縮化のための条件を説明します。省略形を使用せず、スイッチをすべて入力した完全なコマンドは、いつでも使用することができます。
スイッチを省略するための条件: どのような場合でも、引き数のスイッチ部分は常に入力しても構いません。ただし、多くの場合その必要はありません。特に、以下の条件を満たす場合には、コマンドのスイッチを省略しても構いません。
スイッチを省略できる条件は、各コマンドの引き数に規定された順序がある場合だけに限られています。スイッチが提供されない場合、コマンド・インタープリターは、スイッチの代わりに引き数の順序をあてにします。コマンド・インタープリターは、操作コードの次にくる最初の要素をコマンドの最初の引き数とみなし、続く要素についても同様に 2 番目、3 番目の引き数であるとみなします。重要な例外は、コマンドの最後の必須引き数が複数の値を受け入れる場合です。この場合、コマンド・インタープリターは、発行者が、最後の引き数まで、 1 つの引き数に対して 1 つの値を正しく指定しているものと想定し、最後に残った値がすべて最後の引き数に指定された値と考えます。
以下のリストは、スイッチを省略する規則を、反対側の観点から説明したものです。つまり、以下の条件が適用される場合には、引き数のスイッチを提供しなければなりません。
スイッチの省略の例: コマンド例 のコマンドの例をもう一度考えます。
% bos getdate -server fs1.abc.com -file ptserver kaserver
このコマンドには、2 つの必須引き数の、サーバー・マシン名 (-server で識別される) とバイナリー・ファイル名 (-file で識別される) があります。 2 番目の引き数には、複数の値を設定できます。 3 つの条件すべてを満たすことによって、発行者はスイッチを省略することができます。
% bos getdate fs1.abc.com ptserver kaserver
スイッチがないため、 bos コマンド・インタープリターは、引き数の順序を頼りにします。このコマンド・インタープリターは、操作コードに続く最初の要素、 fs1.abc.com はサーバー・マシン名であり、次の引き数 ptserver はバイナリー・ファイル名であると想定します。その後、コマンドの 2 番目の (かつ最後の) 引き数は複数の値を受け入れるため、コマンド・インタープリターは、kaserver を、コマンドに追加された値として正しく解釈します。
これに反して、以下の引き数は、たとえ条件 3 を満たしていても、 スイッチを省略するための条件 の最初の 2 つの条件に違反しているため、受け入れられません。たとえ、引き数当り 1 つの例しかなくても、引き数は規定の順序で表示されず、スイッチは 1 つの引き数には提供されますが、ほかの引き数には提供されません。
% bos getdate ptserver -server fs1.abc.com
この節では、操作コードの名前、オプション名、サーバー・マシン名、区画名、およびセル名を省略する方法について説明します。それ以外のタイプの値は省略できません。
操作コードの省略: 操作コードは、そのセットの他の操作コードと区別できる範囲で、最短形にまで操作コードを省略することができます。
たとえば、bos install を bos i に短縮することができます。それは、bos コマンド・セットの操作コードで、文字 i で始まるものがほかにないからです。これに対して、 bos 操作コードに s という文字で始まる操作コードがあれば、短縮形は、あいまいにならないように、以下のようにさらに長くしなければなりません。
bos salvage の場合は bos sa
bos setauth の場合は bos seta
bos setcellname の場合は bos setc
bos setrestart の場合は bos setr
bos shutdown の場合は bos sh
bos start の場合は bos start
bos startup の場合は bos startu
bos status の場合は bos stat
bos stop の場合は bos sto
省略形の他に、操作コードによっては別名 と呼ばれる短縮形を持つものがあります。短縮形は、操作コードをあいまいさのない最短形にまで省略して作られるのではありません。たとえば、fs setacl コマンドの別名は、 fs sa です。この場合あいまいさのない最短省略形は fs seta です。
操作コードが別名を持つには、2 つの理由があります。
操作コードが別名を持っている場合でも、最短省略形も使用できます。したがって、fs setacl コマンドには、次の 3 つの使用可能な形式があります。 fs setacl (完全形)、 fs seta (最短省略形)、そして fs sa (別名) です。
スイッチとフラグの短縮: スイッチやフラグは、別のスイッチとフラグから区別できる最短の形式にまで短縮することができます。 スイッチを省略するための条件 にリストされる条件に完全に従ってスイッチを省略することが頻繁にできます。
サーバー・マシン名の省略: サーバー・マシンには、完全に修飾されたインターネット形式のホスト名がなければなりません (たとえば、 fs1.abc.com など)。ただし、コマンド行に常にフルネームを入力する必要はありません。 AFS コマンドには、明確な短縮形を使用できます。ただし、コマンドが発行されたときに短縮名を等価な完全修飾名に解決するのは、セルのネーム・サービス (たとえばドメイン・ネーム・サービス) あるいはローカル・ホスト・テーブルによって異なります。
ほとんどのコマンドには、マシンの IP アドレスをドット付きの 10 進数形式としたものを識別子として使用できます。
区画名の短縮: AFS ボリュームを格納している区画の名前は、 /vicepx または /vicepxx という形式でなければなりません。ここで、最後の可変部分は、 1 字または 2 字の小文字で表します。通常、サーバー・マシン上に作成された最初のサーバー区画は /vicepa、 2 番目は /vicepb、などと呼びます。 AFS インストールの手引き では、AFS ボリュームを保存する準備として、ファイル・サーバー・マシンの区画を構成し、名前を指定する方法について説明します。
AFS コマンドを発行する場合、以下の形を使って、区画名を省略します。
/vicepa = vicepa = a = 0 /vicepb = vicepb = b = 1
/vicepz (これのインデックスは 25 です) の後には、以下が続きます。
/vicepaa = vicepaa = aa = 26 /vicepab = vicepab = ab = 27
次の値まで、以下同様となります。
/vicepiv = vicepiv = iv = 255
セル名の省略: 通常セルのフルネームは、インターネット・ドメイン名 (State University の stateu.edu または ABC Corporation の abc.com など) と一致します。一部の AFS コマンドは、明白な短縮形を、通常はローカルの /usr/vice/etc/CellServDB ファイルを参照して受け入れます。ただし、対応するドメイン名を解決するのは、ローカル・ネーム・サービスの性能によって異なります。
コマンド・セットの属している AFS コマンドのオンライン・ヘルプを表示するには、 help および apropos 操作コードを使用します。また、ほとんどすべての AFS コマンドでは、 -help フラグを使用することもできます。
コマンドのオンライン・ヘルプ項目は、次の 2 行または 3行で構成されます。
操作コードが指定されない場合、help 操作コードは、そのコマンド・セットに含まれる各操作コードの最初の行 (簡単な説明) を表示します。
% command_suite help
操作コードを一つ以上指定した場合、help 操作コードは、各コマンドの完全なオンライン項目 (簡単な説明、ある場合には別名、および構文) を表示します。
% command_suite help operation_code+
-help フラグはコマンドの構文を表示します。ただし、簡単な説明や別名は表示されません。
% command_name -help
apropos 操作コードは、操作コードまたは簡単な説明に指定されるキーワードが組み込まれるコマンド・セットの、任意のコマンドに関する簡単な説明を表示します。
% command_suite apropos "<help string>"
次のコマンドの例では、 fs setacl コマンドの完全なオンライン・ヘルプ項目を表示します。
% fs help setacl fs setacl: set access control list aliases: sa Usage: fs setacl -dir <directory>+ -acl <access list entries>+ [-clear] [-negative] [-id] [-if] [-help]
構文だけを参照する場合は、-help フラグを使用します。
% fs setacl -help Usage: fs setacl -dir <directory>+ -acl <access list entries>+ [-clear] [-negative] [-id] [-if] [-help]
次は、ホーム・ボリュームの割り当て量を表示させる場合の例です。関連コマンドが fs セットに属していることは分かっていても、操作コードを覚えていないとします。この場合、ユーザーはキーワードとして quota を使用します。
% fs apropos quota listquota: list volume quota quota: show volume quota usage setquota: set volume quota
次の例は、コマンド名または概説に、指定したキーワードが含まれていない場合に表示されるエラー・メッセージを示しています。
% fs apropos "list quota" コマンドが見つかりません。
必要となる特権
多くの AFS コマンドには、1 つまたは複数のタイプの管理特権が必要です。各コマンドについては、解説ページを参照してください。
関連情報