# 管理解説書

## fileserver

目的

fs プロセスのファイル・サーバー・コンポーネントを初期化します。

構文

    fileserver [-d <debug level>]  [-p <number of processes>]
               [-spare <number of spare blocks>]
               [-pctspare <percentage spare>]  [-b <buffers>]
               [-l <large vnodes>]  [-s <small  nodes>]
               [-vc <volume cachesize>]  [-w <call back wait interval>]
               [-cb <number of call backs>]
               [-banner (print banner every 10 minutes)]
               [-novbc (whole volume cbs disabled)]
               [-implicit <admin mode bits: rlidwka>]
               [-hr <number of hours between refreshing the host cps>]
               [-busyat <redirect clients when queue > n>]
               [-rxpck <number of rx extra packets>]
               [-rxdbg (enable rx debugging)]
               [-rxdbge (enable rxevent debugging)]
               [-m <min percentage spare in partition>]
               [-lock (keep fileserver from swapping)]
               [-L (large server conf)]  [-S (small server conf)]
               [-k <stack size>]  [-realm <Kerberos realm name>]
               [-udpsize <size of socket buffer in bytes>]
               [-enable_peer_stats]  [-enable_process_stats]
               [-help]

このコマンドは、AFS コマンド・セットの構文規則に準拠していません。コマンド名およびすべてのオプション名は省略せずにすべて指定してください。

構文

fileserver コマンドは、fs プロセスのファイル・サーバー・コンポーネントを初期化します。通常の構成では、バイナリー・ファイルはファイル・サーバー・マシンの /usr/afs/bin ディレクトリーにあります。

fileserver コマンドは、通常はコマンド・シェル・プロンプトでは発行せず、データベース・サーバー・マシンの /usr/afs/local/BosConfig ファイルに bos create コマンドと一緒に記述します。このコマンドをコマンド・シェル・プロンプトで発行する場合には、発行者はローカルのスーパーユーザー root としてログオンしなければなりません。

ファイルが存在していない場合は、ファイル・サーバーは初期化時に /usr/afs/logs/FileLog ログ・ファイルを作成します。このファイルにはデフォルトでは詳細なトレースは書き込まれませんが、-d オプションを指定するとより詳細なトレースを書き込むことができます。 bos getlog コマンドを使用して、ログ・ファイルの内容を表示します。

このコマンドに引き数を指定すると、ファイル・サーバーのパフォーマンスの多くの性質を制御することができます。詳細は「オプション」セクションを参照してください。デフォルトでは、fileserver コマンドは、中規模のファイル・サーバー・マシンに適した値を引き数に設定します。小規模あるいは大規模のファイル・サーバー・マシンに適した値を設定する場合には、それぞれ -S また -L フラグを使用してください。以下のリストは、fileserver コマンドがデフォルトの値を設定するパラメーターとそれに対応する引き数を説明したもので、表 1 は 3 つのマシン・サイズのそれぞれの設定を要約したものです。

- ファイル・サーバーがデータ要求の処理に使用する負荷の低い処理 (LWP) の最大数は、-p 引き数で指定します。ファイル・サーバーは、これらの処理のために常に最低値 32KB を使用します。
- ファイル・サーバーがメモリーにキャッシュするディレクトリー・ブロックの最大数は、-b 引き数で指定します。キャッシュされた各ディレクトリー・ブロック (バッファー) は、2,092 バイトのメモリーを使用します。
- ファイル・サーバーがディレクトリー要素を追跡するためにメモリーにキャッシュするラージ vnodes の最大数は、-l 引き数で指定します。各ラージ vnode は、292 バイトのメモリーを使用します。
- ファイル・サーバーがファイル要素を追跡するためにメモリーにキャッシュするスモール vnodes の最大数は、-s 引き数で指定します。各スモール vnode は、100 バイトのメモリーを使用します。
- ボリュームの最大キャッシュ・サイズは、ディスクからデータを取得する前にファイル・サーバーがメモリーにキャッシュできるボリューム数を決定し、-vc 引き数で指定します。
- ファイル・サーバーがメモリーにキャッシュするコールバック構造体の最大数は、-cb 引き数で指定します。各コールバック構造体は、16 バイトのメモリーを使用します。
- ファイル・サーバーが使用する Rx パケットの最大数は、-rxpck 引き数で指定します。各パケットは、1544 バイトのメモリーを使用します。

表 1. ファイル・サーバーの構成パラメーター

パラメーター (引き数) | 小規模構成 (-S) | 中規模構成 (デフォルト) | 大規模構成 (-L)
LWP 数 (-p) | 6 | 9 | 12
キャッシュ・ディレクトリー・ブロック数 (-b) | 70 | 90 | 120
キャッシュされるラージ vnodes 数 (-l) | 200 | 400 | 600
キャッシュされるスモール vnodes 数 (-s) | 200 | 400 | 600
ボリュームの最大キャッシュ・サイズ (-vc) | 200 | 400 | 600
コールバック数 (-cb) | 20,000 | 60,000 | 64,000
Rx パケット数 (-rxpck) | 100 | 150 | 200

これらの値を上書きするには、上に示した引き数を指定します (引き数には -S または -L フラグを組み合わせることができます)。

ファイル・サーバーに必要なメモリー量は、場合によって異なります。デフォルトのおおよそのメモリー使用量は、-S フラグを使用している場合 (小規模構成) は 751 KB、すべてデフォルト設定としている場合 (中規模構成) は 1.1 MB、-L フラグを使用している場合 (大規模構成) は 1.4 MB です。メモリーを追加できる場合には、-cb と -vc 引き数の値を大きくすれば、ファイル・サーバーのパフォーマンスを直接向上することができます。

デフォルトでは、アプリケーションがいっぱいになったボリュームの既存ファイルにデータを書き込む場合、ファイル・サーバーはボリュームの割り当て量を 1MB 大きくすることができます。ただし、ファイル・サーバーは、ユーザーに対して、いっぱいになっているボリュームに新規のファイルを作成することは許可しません。デフォルトを変更するには、以下の引き数の 1 つを使用してください。

- -spare 引き数を、ファイル・サーバーが過多量として許可する追加のキロバイト数に設定します。 0 を設定すると、増加分は割り当てられません。
- -pctspare 引き数に、ファイル・サーバーが増加分として許可する割り当て量をパーセントで設定します。

デフォルトでは、ファイル・サーバーはファイル・サーバー・マシンに格納されているボリュームの各ディレクトリーのアクセス制御リスト (ACL) の system:administratorsに、a (管理) および l (検索) アクセス権を暗黙的に許可します。すなわち、グループのメンバーは、グループの項目が ACL に表示されなくても、これらの 2 つのアクセス権を行使することができます。デフォルトのアクセス権セットを変更するには、-implicit 引き数を使用します。

ファイル・サーバーは、データ・アクセス要求の発行元のクライアント・マシンごとに、現在のホスト保護サブグループ (host CPS) を保守しています。ユーザーの CPS のように、ホスト CPS は、マシンが付属する保護データベース・グループのすべてをリストし、ファイル・サーバーはホスト CPS をディレクトリーの ACL と比較して、マシン上のユーザーがディレクトリーの内容にアクセスすることを許可する方法を決定します。 pts adduser または pts removeuser コマンドを使用してマシンが属するグループを変更する場合、ファイル・サーバーはその変更を通知するためにマシンのホスト CPS を再計算しなければなりません。デフォルトでは、ファイル・サーバーは 2 時間ごとに保護サーバーに接続してホストの CPS を再計算します。つまり、グループのメンバーシップの変更が有効になるまでには時間がかかるということです。この頻度を変更するには、-hr 引き数を使用します。

注: | AIX オペレーティング・システムは、自動的に各区画の一部を予約し、区画のスペースが完全になくなった場合に発生する可能性のある負の結果を防止することはありません。そこで、AIX バージョンのファイル・サーバーは、8% のディスク予約スペースを自動的に作成します。このパーセンテージを変更するには、-m 引き数を使用します。

区画にスペースがほとんどなくなってくると、ファイル・サーバーは次のようなメッセージを生成します。

       No space left on device

注意

-k と -w 引き数は使用しないでください。これらは、AFS 開発グループのみが使用するようになっています。これらの引き数をデフォルト値から変更すると、ファイル・サーバーの動作は予測できません。どんな場合でも、多くのオペレーティング・システムでは、ファイル・サーバーは、LWP スレッドではなく、固有のスレッドを使用します。したがって、-k 引き数を使用して LWP スレッドの数を設定しても、なんの効果もありません。

-spare 引き数および -pctspare 引き数の両方を指定しないでください。両方とも指定するとファイル・サーバーが終了し、/usr/afs/logs/FileLog ファイルにエラー・メ ッセージが書き込まれます。

-m オプションおよび -lock オプションなど、一部のシステム・タイプにしか使用できないオプションは、関係のあるシステム・タイプでのみ -help オプションが生成する出力に表示されます。

オプション

-d
  /usr/afs/logs/FileLog ファイルに書き込まれるデバッグ・トレースの詳細レベルを設定します。以下の値の 1 つを指定してください。それぞれの値は、この順に詳細な追跡結果を作成します。 0、1、5、 25、および 125。デフォルト値は 0 で、数メッセージしか作成されません。

-p
  実行するスレッドの数を設定します。正の整数を与えます。ファイル・サーバーは、指定された数に加えて、特別な目的のために 5 つのスレッドを作成して使用します。 (ただし、この引き数に、可能な最大数を指定すると、ファイル・サーバーは、独自の目的のためにそれらのスレッドの 5 つを自動的に使用します)。

  スレッドの最大の数は、AFS のリリースごとに異なります。現行のリリースについては、AFS リリース情報 を参照してください。

-spare
  割り当て量を超過した後に、アプリケーションがボリュームに格納できる追加量をキロバイト単位で指定します。正の整数を与えます。この値を 0 にすると、ボリュームは割当量を超過することはできません。この引き数は、-pctspare 引き数と一緒に使用してはなりません。

-pctspare
  ファイル・サーバーが、割り当て量を超えるボリュームに許可する追加量を、割り当て量のパーセンテージで指定します。 0 〜 99 までの整数を指定します。値 0 を指定すると、ボリュームを割り当て量よりも大きくすることはできません。この引き数は、-spare 引き数と一緒に使用してはなりません。

-b
  ディレクトリーのバッファー数を設定します。正の整数を与えます。

-l
  ディレクトリーの要素をキャッシングするためにメモリーで使用できるラージ vnodes 数を設定します。正の整数を与えます。

-s
  ディレクトリーの要素をキャッシングするためにメモリーで使用できるスモール vnodes 数を設定します。正の整数を与えます。

-vc
  ファイル・サーバーがメモリーにキャッシュ可能なコールバックの数を設定します。正の整数を与えます。

-w
  ファイル・サーバーが自身の保守作業を実行することで作成されたデーモンでの間隔を設定します。この引き数は使用しないでください。デフォルト値を変更すると、予想できない動作をすることがあります。

-cb
  ファイル・サーバーがトラック可能なコールバックの数を設定します。正の整数を与えます。

-banner
  以下のバナーを、/dev/console におよそ 10 分ごとに出力します。

         File Server is running at time.

-novbc
  (たとえば、vos restore コマンドの実行により) ボリュームがオフラインになった後で、ファイル・サーバーがそのボリュームに再接続する場合に、キャッシュ・マネージャーがそのボリュームに保持しているコールバックを、ファイル・サーバーが切断しないようにします。このフラグは可能な限り使用しないようにしてください。

-implicit
  ファイル・サーバー・マシンに保存されているボリュームの各ディレクトリーの ACL の system:administrators グループに対して、デフォルトで許可するアクセス権のセットを定義します。 1 つ以上の標準のアクセス権を表す文字 (rlidwka) とアクセス権の補助文字 (ABCDEFGH)、または アクセス権を許可されたグループに対する省略表記 (all、none、read、および write) の 1 つを指定します。アクセス権の意味については、fs setacl の解説ページを参照してください。

  注: | ファイル・サーバーは、none を使用している場合でも、常に 1 つ のアクセス権を system:administrators グループに暗黙で許可しています。

-hr
  保護グループに属するマシンの情報をファイル・サーバーが最新表示する (マシンのホスト CPS を最新表示する) 頻度を指定します。ファイル・サーバーは、マシンが今持っている必要な ACL アクセス権のためのデータをアクセスする保護グループへ最近追加されたマシンからのユーザーを使用可能にする情報を更新する必要があります。

-busyat
  ファイル・サーバーが最新の RPC を送信したキャッシュ・マネージャーにエラー・コード VBUSY を戻す前に、ファイル・サーバーからの応答を待機できる着信 RPC の数を定義します。キャッシュ・マネージャーは、応答として RPC を少し遅れて送信します。この引き数を指定すると、待機中の RPC が多くなりすぎて、ファイル・サーバーがそれらを全く処理できなくなるのを防ぐことができます。正の整数を与えます。デフォルト値は 600 です。

-rxpck
  現在ファイル・サーバーが処理中で、応答待ちしている着信 RPC のデータと、完了していない返信のデータを保存するのにファイル・サーバーが使用する Rx パケット数を制御します。正の整数を与えます。

-rxdbg
  Rx パケットに対するファイル・サーバーの操作の追跡をファイル /usr/afs/logs/rx_dbg に書き込みます。

-rxdbge
  Rx イベント (たとえば、再送信イベント) に対するファイル・サーバーの操作の追跡をファイル /usr/afs/logs/rx_dbg に書き込みます。

-m
  AIX バージョンのファイル・サーバーが予約として作成する各 AFS サーバー区画のパーセンテージを指定します。 0 〜 30 の間の整数値を指定します。デフォルトは 8% です。 0 を指定すると、その区画はいっぱいになるまで使用できますが、深刻な影響が発生する可能性があります。

  注: | この引き数は、AIX オペレーティング・システムが稼働しているマシンでのみ使用できます。したがって、他のシステム・タイプで -help フラグが使用されている場合は、構文ステートメントには表示されません。

-lock
  IRIX オペレーティング・システムが稼働しているファイル・サーバーで、fileserver バイナリーのどの部分も、メモリー不足によってページング (スワップ) されることがないようにします。

  注: | この引き数は、IRIX オペレーティング・システムが稼働しているマシンでのみ使用できます。したがって、他のシステム・タイプで -help フラグが使用されている場合は、構文ステートメントには表示されません。

-L
  多くの引き数に対して、大規模なファイル・サーバー・マシンに適した動作をするよう値を設定します。このフラグと -S フラグを除くオプションを組み合わせます。中規模サイズのファイル・サーバー・マシンに適した値を設定するには、両方のフラグを省略します。

-S
  多くの引き数に対して、小規模なファイル・サーバー・マシンに適した動作をするよう値を設定します。このフラグと -L フラグを除くオプションを組み合わせます。中規模サイズのファイル・サーバー・マシンに適した値を設定するには、両方のフラグを省略します。

-k
  1 KB 単位で LWP スタック・サイズを設定します。この引き数を使用しないでください。特に、デフォルトの 24 より小さい値を指定しないでください。

-realm
  使用するファイル・サーバーの Kerberos 領域名を定義します。この引き数が指定されていない場合は、ローカルの /usr/afs/etc/ThisCell ファイルにリストされているセルに対応する領域名が使用されます。

-udpsize
  UDP バッファーのサイズを設定します。デフォルト値は 64 KB です。正の整数を指定します。できればデフォルト値よりも大きくしてください。

-enable_peer_stats
  Rx 統計集合を活動化し、それらを保管するためのメモリーを割り振ります。別のマシンの特定の UDP ポートとの接続ごとに、送信または受信された RPC の各タイプ (FetchFile、 GetStatus など) のレコードが別々に保持されています。レコードを表示したり、ほかの方法でレコードにアクセスするには、 Rx Monitoring API を使用します。

-enable_process_stats
  Rx 統計集合を活動化し、それらを保管するためのメモリーを割り振ります。送信または受信された RPC の各タイプ (FetchFile、GetStatus など) ごとに、レコードが別々に保持され、別のマシンへのすべての接続が集計されます。レコードを表示したり、ほかの方法でレコードにアクセスするには、 Rx Monitoring API を使用します。

-help
  このコマンドのオンライン・ヘルプを出力します。これ以外の有効なオプションはすべて無視されます。

例

以下の bos create コマンドは、大規模な構成サイズを使用して、割り当て量の 10% を超えるボリュームを許可するファイル・サーバー・マシン fs2.example.com で fs プロセスを作成します。1 行にコマンドをタイプします。

       % bos create -server fs2.example.com -instance fs -type fs   \
                    -cmd "/usr/afs/bin/fileserver -pctspare 10 \
                    -L" /usr/afs/bin/volserver /usr/afs/bin/salvager

必要となる特権

シェル・プロンプトでコマンドを発行するためには、発行者はファイルのサーバー・マシン上でローカル・スーパーユーザー root としてログインする必要があります。通常は、bos create コマンドを発行して、プロセスの作成および開始を行います。

関連情報

BosConfig

FileLog

bos create

bos getlog

fs setacl

salvager

volserver

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

(C) IBM Corporation 2000. All Rights Reserved