システム管理者として最も重要な役割の 1 つは、ファイル・サーバー・マシンのプロセスが正しく稼働していることを確認することです。各ファイル・サーバー・マシン上で稼働する BOS サーバーは、そのマシン上の他の AFS サーバー・プロセスを絶えず監視することによって、ユーザーを多くの責任から解放します。BOS サーバーは失敗したプロセスを自動的に再始動することができ、相互依存性を考慮に入れた再始動が行なわれるよう指示します。
異なるファイル・サーバー・マシンは異なるプロセスの組み合わせを実行するため、各ファイル・サーバー・マシン上の BOS サーバーが監視するプロセスを定義する必要があります (その方法については、プロセス状況の制御および検査 を参照してください)。
サーバー・プロセス状況を直接制御して、ルーチン・メインテナンスを実行するか、BOS サーバーが訂正できない問題を訂正する必要があるかもしれません (たとえばデータベースの複写または相互認証に関する問題)。その場合、bos コマンドの発行によって、 BOS サーバーを介してプロセス状況を制御します。
この章では、指示されたコマンドを使用して次のタスクの実行する方法を説明します。
プロセス状況を検査する | bos status |
BosConfig file ファイルの情報を検査する | bos status (-long フラグ付き) |
プロセス・インスタンスを作成する | bos create |
プロセスを停止する | bos stop |
停止したプロセスを開始する | bos start |
プロセスを一時的に停止する | bos shutdown |
一時的に停止したプロセスを開始する | bos startup |
プロセスを停止し、即時に再始動する | bos restart |
すべてのプロセスを停止し、即時に再始動する | bos restart (-bosserver フラグ付き) |
BOS サーバーの再始動時を検査する | bos getrestart |
BOS サーバーの再始動時を設定する | bos setrestart |
ログ・ファイルを検査する | bos getlog |
コマンドをリモートで実行する | bos exec |
このセクションでは、ファイル・サーバー・マシン上で実行することができるさまざまなサーバー・プロセスについて簡単に説明します。複数のファイル・サーバー・マシンがあるセルでは、すべてのプロセスがすべてのマシン上で稼働するわけではありません。
AFS サーバー・プロセスは、コンテキストによっては、3 つのうちのいずれかの方法で参照します。
次の機能グループは、各プロセスに対する名前、およびプロセスを使用する管理タスクの一部を指定します。サーバーについてのより一般的な説明については、AFS サーバー・プロセスとキャッシュ・マネージャー を参照してください。
各 AFS サーバー・マシン上で稼働する bosserver プロセスは、そのマシン上で稼働する他の AFS サーバー・プロセスを監視する役割がある Basic OverSeer (BOS) サーバーです。プロセスに障害が発生すると、BOS サーバーは、それを人間のオペレーターの介入なしに自動的に再始動することができます。複数のコンポーネント・プロセスを持つプロセスを再始動する場合、相互依存を考慮する必要があります (たとえば、プロセスのコレクション: ファイル・サーバー、ボリューム・サーバーおよびサルベージャー で説明されている fs プロセス)。
BOS サーバーは、それ自体を監視および再始動できないため、bos status コマンドの出力には表示されません。/usr/afs/bin/bosserverとして ps コマンドの出力で表示されます。
システム管理者として、次のタスクを実行するために bos コマンドを発行するときに BOS サーバーと連絡します。
データベース・サーバー・マシン上で稼働する buserver プロセスは、バックアップ・サーバーです。このプロセスは、バックアップ・システム構成およびバックアップ・データベースのオペレーションについての情報を管理します。
プロセスは、一般的な名前が割り当てられている場合、bos status コマンドの出力で buserver のように表示されます。/usr/afs/bin/buserver として ps コマンドの出力で表示されます。
システム管理者として、バックアップ・システム構成情報を変更するもの、ボリュームから永久記憶域にデータをダンプするもの、またはデータを AFS に回復するものなどを含む、バックアップ・データベースの情報を操作する backup コマンドを発行するときにバックアップ・サーバーに接触します。 AFS バックアップ・システムの構成 および AFS データのバックアップと復元を参照してください。
各ファイル・サーバー・マシン上で稼働する fs プロセスは、 3 つのコンポーネント・プロセス、すなわちファイル・サーバー、ボリューム・サーバー、およびサルベージャーを結合します。 3 つのコンポーネントは、独立した機能を実行しますが、次の理由から単一プロセスとして制御されます。
ファイル・サーバー・コンポーネントは、ファイルおよびディレクトリーのレベルで AFS データを処理して、アプリケーション・プログラムおよび標準のオペレーティング・システム・コマンドで要求されたときにファイル・システム要素を操作します。主な役割は、クライアント・マシンに要求ファイルを送達し、クライアントが使い終わると、それを再びサーバー・マシンに格納することです。また、各ファイルおよびディレクトリーに関する状況および保護情報も保持します。通常の操作中は、連続的に稼働します。
ボリューム・サーバー・コンポーネントは、ファイルおよびディレクトリーのレベルではなく、ボリューム全体のレベルで AFS データを処理します。vos コマンドへの応答として、他のアクション間で、ボリューム全体を作成、削除、移動、ダンプおよび復元します。通常の操作中は、連続的に稼働します。
サルベージャー・コンポーネントは、他の 2 つのプロセスのうちの 1 つが失敗したあとにのみ稼働します。このコンポーネントは、内部整合性についてファイル・システムを検査して、エラーが見付かった場合にはそれを修理します。
プロセスは、一般的な名前が割り当てられている場合、bos status コマンドの出力で fs のように表示されます。補助メッセージは、ファイル・サーバーまたはサルベージャー・コンポーネントの状況をレポートします。BosConfig ファイルのプロセス状況および情報の表示を参照してください。
fs プロセスのコンポーネント・プロセスは、次のように、ps コマンドの出力で個別に表示されます。fs プロセスそのものには、項目がありません。
キャッシュ・マネージャーは、AFS ファイルまたはディレクトリーにあるデータまたはステータス情報をアクセスするとき、または UNIX cp および ls コマンドのようなファイル操作コマンドを発行するときには、ユーザー自身のためにファイル・サーバー・コンポーネントに接触します。次の機能を実行する fs コマンドを発行すると、ファイル・サーバーに直接接触することができます。
作成、除去、複写、移動、名前変更、異なるフォーマットへの変換、およびサルベージのいずれかの方法でボリュームを操作する vos コマンドを発行するときボリューム・サーバー・コンポーネントと接触します。説明については、 ボリュームの管理を参照してください。
通常、サルベージャーは障害があった場合に自動的に稼働します。 ボリュームのサルベージ で説明してあるように、bos salvage コマンドで始動することもできます。
データベース・サーバー・マシン上で稼働する kaserver プロセスは、 AFS セキュリティーのいくつかの局面に対して責任を負う認証サーバーです。このサーバーは、パスワードを要求して AFS ユーザー識別を検証します。認証データベース内のすべての AFS サーバーの暗号化鍵およびユーザー・パスワードを保持します。認証サーバーのチケット付与サービス (TGS) モジュールは、セキュア・コネクションを確立するとき AFS クライアントおよびサーバーが処理する共有シークレットを作成します。
プロセスは、一般的な名前が割り当てられている場合、bos status コマンドの出力で kaserver のように表示されます。文字列 ka は、Kerberos 認証 (Kerberos Authentication) を意味し、 AFS 認証プロトコルはマサチューセッツ工科大学のプロジェクト Athena によって開発された Kerberos を基礎としていることを表しています。
/usr/afs/bin/kaserver として ps コマンドの出力で表示されます。
システム管理者として、次のタスクを実行するために kas コマンドを発行するときに認証サーバーと接触します。
データベース・サーバー・マシン上で稼働する ptserver プロセスは、保護サーバーです。その主な役割は、ユーザー、マシンおよびグループ項目を含む保護データベースの保持です。保護サーバーは、AFS ID を割り当てて、ID と名前間のマッピングを保持します。ファイル・サーバーは、要求されたアクションをユーザーが実行する権限があるかを検証するときに保護サーバーに相談します。
プロセスは、一般的な名前が割り当てられている場合、bos status コマンドの出力で ptserver のように表示されます。/usr/afs/bin/ptserverとして ps コマンドの出力で表示されます。
システム管理者として、次のタスクを実行するために pts コマンドを発行するときに保護サーバーと接触します。
runntp プロセスは、すべてのサーバー・マシン上で稼動するネットワーク・タイム・プロトコル・デーモン (NTPD) の制御プログラムで、サーバー・マシン上にあるハードウェア・クロックを同期させます。NTP または別のタイム同期化プロトコルをサーバー・マシン上でまだ稼動していない場合には、runntpプロセスを実行する必要があります。
データベース・サーバー・マシン上のクロックは、AFS の分散データベース・テクノロジー (Ubik) は、振動の狭い範囲内でクロックが一致するときのみ正しく動作するため、データベース・サーバー・マシン上のクロックは同期する必要があります (Ubik の適切なオペレーションのためのセル構成を参照 )。ファイル・サーバーはファイル上の変更タイム・スタンプを設定するだけではなく、通常の構成では AFS クライアント・マシンのタイム・ソースとなるため、ファイル・サーバー・マシン上のクロックは正確にする必要があります。
プロセスは、一般的な名前が割り当てられている場合、bos status コマンドの出力で runntp のように表示されます。それは、/usr/afs/bin/runntp として ps コマンドの出力に表示されます。ps コマンドの出力には、ntpd という項目も含まれます。その正確な形式は、runntp コマンドに設定する引き数によって違います。
AFS インストールの手引きの指示に従って、システム管理者は、いったんインストールされた NTPD には直接接触することはありません。
アップデート・サーバーには 2 つの分離パーツがあり、各パーツは異なるタイプのファイル・サーバー・マシン上で稼働します。upserver プロセスは、更新サーバーのサーバー部分です。その機能は、ユーザーが使用する AFS の版によって違います。
upclient プロセスは更新サーバーのクライアント部分で、サーバー部分のように、その機能は使用する AFS 版によって違います。
bos status コマンドの出力では、通常の名前が割り当てられている場合、サーバー部分は upserver のようになり、クライアント部分は upclientbin と upclientetc のようになります。ps コマンドからの出力では、サーバー部分は、/usr/afs/bin/upserver として表示されますが、クライアント部分は /usr/afs/bin/upclient として表示されます。
システム管理者として、いったんインストールされた更新サーバーには、直接接触することはありません。配布するファイルを変更するために bos コマンドを使用するときには、自動的に動作します。
データベース・サーバー・マシン上で稼働する vlserver プロセスは、ファイル・システム内のすべてのボリュームを自動的に追跡するボリューム・ロケーション (VL) サーバーで、そのロケーションをクライアント・アプリケーションに対してトランスペアレントにします。
プロセスは、一般的な名前が割り当てられている場合、bos status コマンドの出力でvlserverのように表示されます。/usr/afs/bin/vlserver として ps コマンドの出力で表示されます。
システム管理者として、ボリュームの状況を変更する任意の vos コマンドを発行して、VL サーバーと接触します(VLDB 内の状況変化を記録します)。
サーバー・マシン上で稼動する AFS サーバー・プロセスを定義するには、bos create コマンドを使用してローカルの /usr/afs/local/BosConfig ファイルで項目を作成します。BOS サーバーは、Run ステータス・フラグでマークされているBosConfig ファイルにリストされているプロセスをモニターして、失敗した場合には自動的に再始動しようとします。処理入力を作成すると、プロセスを停止、開始するためまたは必要に応じて状況フラグを変更するために bos 組から他のコマンドを使用します。
bos コマンドを使用しないで BosConfig ファイルを直接編集しないでください。同様に、BosConfig ファイルにリストしないでサーバー・プロセスを実行したり、または UNIX kill コマンドのようなプロセス終了コマンドを使用して停止するのは、良い方法ではありません。
BosConfig のプロセス項目には、次の情報が含まれています。
プロセス定義以外に、BosConfig ファイルは、新規バイナリーがあるプロセスに対して、および BOS サーバーを含むすべてのサーバー・プロセスに対して自動再始動時間も記録します。BOS サーバーの再始動時を設定する を参照してください。
BOS サーバーは、開始または再始動するたびに BosConfig ファイルを読み取って、開始およびモニターするプロセスを確認します。BOS サーバーは、情報をカーネル・メモリーに転送して、次に再始動するまで BosConfig ファイルの再読み取りはしません。 BosConfig ファイルには関係なく、BOS サーバーのメモリー状態を変更できることを意味します。たとえば、プロセスを停止しても BosConfig ファイル内の状況フラグを Run のままにしておくこともできますが、BosConfig ファイル内のその状況フラグが NotRun であってもプロセスを始動することができます。
データベース・サーバー・プロセス (認証サーバー、バックアップ・サーバー、またはボリューム・ロケーション・サーバー)を一時的にではなく始動または停止するとき、データベース・サーバー・マシンをインストールまたは除去するためには AFS インストールの手引きの指示に従う必要があります。正しい AFS 機能を維持するために実行する必要のあるタスクの要約を以下に示します。
通常のセル構成では、各システム・タイプのサーバー・マシンはバイナリー配布マシンとして動作し、更新サーバー (upserver プロセス) のサーバー部分を実行してその /usr/afs/bin ディレクトリーの内容を配布します。そのシステム・タイプの他のサーバー・マシンは、バイナリー配布マシンを参照する更新サーバー・クライアント部分 (通常、upclientbin という) のインスタンスを実行します。
米国版の AFS を稼動する場合には、最初のサーバー・マシンとしては、システム制御マシンとして動作するように設置して、更新サーバー (upserver プロセス) のサーバー部分がその /usr/afs/etc ディレクトリーの内容を配布するように動作させるのが一般的です。他のすべてのサーバー・マシンは、システム制御マシンを参照する更新サーバー・クライアント部分 (通常、upclientetc という) のインスタンスを実行します。
注: | AFS 国際版を使用する場合は、更新サーバーを使用して /usr/afs/etc ディレクトリーの内容を配布しないでください(システム制御マシンを稼動しません)。この章のプロセスへのすべてのリファレンスを無視してください。 |
現在その役割の 1 つで使用しているマシンを使用停止しないかぎり、バイナリー配布またはシステム制御責任を別のマシンに移動しないでおくのが最も使いやすい方法です。通常、更新サーバーを実行しても、処理負荷はほとんどかかりません。機能を移動する必要がある場合には、次の関連タスクを実行します。
サーバー・マシン上にある AFS サーバー・プロセスの状況を表示するには、bos status コマンドを発行します。 -long フラグを追加すると、そのタイプとコマンド・パラメーターを含めて BosConfig ファイルにある各プロセスの項目の情報のほとんどが表示されます。/usr/afs ディレクトリーにあるファイルとサブディレクトリーのモード・ビットが予期値と一致しない場合には、警告メッセージも表示されます。
% bos status <machine name> [<server process name>+] [-long]
ここで、
出力には各プロセスの項目が含まれ、プロセスの状況を示すために次の文字列の 1 つが使用されます。
fs プロセスの出力には、常に補助状況とマークされたメッセージが含まれています。これは、以下のいずれかです。
cron プロセスの出力には、コマンドが次に実行する時期を報告する補助状況 メッセージが含まれます。次に例を示します。
任意のプロセスの出力は、どこかのポイントでプロセスが失敗して /usr/afs/logs ディレクトリーにコア・ファイルを生成したことを示すため、補助メッセージ「has core file」を取り入れることができます。ほとんどの場合、BOS サーバーはプロセスを再始動することができ、稼動しています。
次の例には、backupusersと呼ばれるユーザー定義の cron 項目が含まれています。
% bos status fs3.abc.com Instance kaserver, currently running normally. Instance ptserver, currently running normally. Instance vlserver, has core file, currently running normally. Instance buserver, currently running normally. Instance fs, currently running normally. Auxiliary status is: file server running. Instance upserver, currently running normally. Instance runntp, currently running normally. Instance backupusers, currently running normally. Auxiliary status is: run next at Mon Jun 7 02:00:00 1999.
bos status コマンドに -long フラグを組み込むと、出力の各プロセスには BosConfig ファイルの次の追加情報が組み込まれます。
さらに、BOS サーバーが /usr/afs の下の特定のファイルおよびディレクトリー上のモード・ビットが、期待から逸脱していることを発見すると、次の警告メッセージを印刷します。
Bosserver process reports inappropriate access on server directories
/usr/afs ディレクトリー以下のディレクトリーおよびファイルに対して予期される保護は次のとおりです。疑問符は、BOS サーバーがモード・ビットをチェックしないことを示します。これらのファイルおよびディレクトリーへの保護の設定についての詳細は、
AFS インストールの手引き を参照してください。
/usr/afs | drwxr?xr-x |
/usr/afs/backup | drwx???--- |
/usr/afs/bin | drwxr?xr-x |
/usr/afs/db | drwx???--- |
/usr/afs/etc | drwxr?xr-x |
/usr/afs/etc/KeyFile | -rw????--- |
/usr/afs/etc/UserList | -rw?????-- |
/usr/afs/local | drwx???--- |
/usr/afs/logs | drwxr?xr-x |
以下は、マシン fs3.abc.com 上で稼動している fs プロセスの拡張出力を示しています。
% bos status fs3.abc.com fs -long Instance fs, (type is fs), currently running normally. Auxiliary status is file server running Process last started at Mon May 3 8:29:19 1999 (3 proc starts) Last exit at Mon May 3 8:29:19 1999 Last error exit at Mon May 3 8:29:19 1999, due to shutdown request Command 1 is '/usr/afs/bin/fileserver' Command 2 is '/usr/afs/bin/volserver' Command 3 is '/usr/afs/bin/salvager'
サーバー・マシン上で新規の AFS サーバー・プロセスを開始するには、bos create コマンドを発行します。/usr/afs/local/BosConfig ファイルに項目が作成され、ファイルおよび BOS サーバーのメモリー両方でプロセスの状況フラグが Run に設定され、直ちに稼動を開始します。そのためには、なるべく /usr/afs/bin ディレクトリーに新規プロセスのバイナリー・ファイルがすでにインストールされている必要があります (新規バイナリーのインストール を参照)。
プロセスを永久的に停止するには、最初に、bos stop コマンドを発行します。プロセスの状況フラグは、BosConfig ファイルと BOS サーバーのメモリー両方で NotRun に変化して、 bos status コマンドの出力で 使用不可 としてマークされます。希望する場合、bos delete コマンドを発行してプロセスの項目を BosConfig ファイルから削除します。プロセスは bos status コマンドの出力に表示されなくなります。
注: | この機能グループに説明されている方法でデータベース・サーバー・プロセスを開始または停止する場合、 AFS インストールの手引き のすべての指示に従って、データベース・サーバー・マシンを作成または除去してください。指定のマシンに 1 つのデータベース・サーバー・プロセスを稼働する場合、それらすべてを稼働しなくてはなりません。詳細については、 データベース・サーバー・プロセスの開始および停止について を参照してください。同様に、システム制御マシンまたはバイナリー配布マシン上で upserver プロセスを停止する場合、更新サーバーの開始および停止について に説明してあるように追加タスクを完了する必要があります。 |
% bos listusers <machine name>
バイナリーが存在しない場合、適切なシステム・タイプのバイナリー配布マシンにインストールして、更新サーバーが、このマシンにコピーするのを待ちます。説明については、新規バイナリーのインストール を参照してください。
% ls /usr/afs/bin
% bos create <machine name> <server process name> \ <server type> <command lines>+ [ -notifier <Notifier program>]
ここで、
シンプル・プロセスでは、ローカル・ディスク上にあるそのプロセスのバイナリー・ファイルの完全パス名を指定します (たとえば、保護サーバーの場合は /usr/afs/bin/ptserver)。初期設定コマンドの任意のオプションが含まれる場合は、コマンド全体を二重引用符 (" ") で囲みます。 upclient プロセスには、必須の引き数があります。その他のすべてのプロセスのコマンドでは、引き数はオプションです。
fs プロセスでは、それぞれのコンポーネント・プロセスごとに、ローカル・ディスクのバイナリー・ファイルの完全パス名を指定します。 fileserver、volserver、および salvager の順になります。標準のバイナリー・ディレクトリーは、/usr/afs/bin です。初期設定コマンドの任意のオプションが含まれる場合は、コマンド全体を二重引用符 (" ") で囲みます。
cron プロセスでは、次の 2 つのパラメーターを指定します。
次の例は、マシン db2.abc.com の保護サーバーを定義および開始します。
% bos create db2.abc.com ptserver simple /usr/afs/bin/ptserver
次の例は、マシン fs6.abc.com の fs プロセスを定義および開始します。
% bos create fs6.abc.com fs fs /usr/afs/bin/fileserver \ /usr/afs/bin/volserver /usr/afs/bin/salvager
次の例は、マシン fs3.abc.com の backupuser プロセスという cron プロセスを定義および開始して、毎日 3:00 a.m に稼動するようにスケジュールします。
% bos create fs3.abc.com backupuser cron "/usr/afs/bin/vos backupsys -prefix user -local" 3:00
% bos listusers <machine name>
% bos stop <machine name> <server process name>+ [-wait]
% bos delete <machine name> <server process name>+
ここで、
BOS サーバーが監視しないようにするためプロセスを停止するには、bos stop コマンドを発行します。プロセスの状況フラグは、BOS サーバーのメモリーおよび BosConfig ファイル両方で NotRun に設定されます。bos start コマンドを発行するまでプロセスは再稼動しません。素の状況フラグは、BOS サーバーのメモリーおよび BosConfig ファイル両方で Run に戻されます。(bos startup コマンドを使用すると、BosConfig ファイルの状況フラグを変更しなくてもプロセスを再始動することができます。プロセスを一時的に停止および開始する を参照してください。)
BosConfig ファイルには BOS サーバー用の項目はないので、bos stop および bos start コマンドは BOS サーバーを制御しません。他のすべてのプロセスとともに BOS サーバーを停止して直ちに再始動するには、プロセスの停止および即時の再始動 に説明してあるように、bos restart コマンドに -bosserver フラグを使用します。
注: | この機能グループに説明されている方法でデータベース・サーバー・プロセスを開始または停止する場合、 AFS インストールの手引き のすべての指示に従って、データベース・サーバー・マシンを作成または除去してください。指定のマシンに 1 つのデータベース・サーバー・プロセスを稼働する場合、それらすべてを稼働しなくてはなりません。詳細については、 データベース・サーバー・プロセスの開始および停止について を参照してください。同様に、システム制御マシンまたはバイナリー配布マシン上で upserver プロセスを停止する場合、更新サーバーの開始および停止について に説明してあるように追加タスクを完了する必要があります。 |
% bos listusers <machine name>
% bos stop <machine name> <server process name>+ [-wait]
ここで、
% bos listusers <machine name>
% bos start <machine name> <server process name>+
ここで、
ときには、プロセスを一時的に停止することが必要になります (たとえば、構成をわずかに変更する、または保守を実行するような場合)。この節で説明するコマンドは、BOS サーバーのメモリーのみにあるプロセスの状況を変更します。変更による影響は即時に現れ、メモリー状態を再び変更するまで継続します (または、BOS サーバーが再始動するまで継続し、再始動したときには、BosConfig ファイル内の項目に従ってプロセスが開始します)。
BOS サーバー・メモリーの状況フラグを NotRun に変更してプロセスを一時的に停止するには、bos shutdown コマンドを使用します。BOS サーバーのメモリーにある状況フラグを Run に変更して、停止したプロセスを再始動するには、bos startup コマンドを使用します。プロセスは、 BosConfig ファイル内の状況フラグに関係なく開始します。以下で説明するように、bos startup コマンドを使用しても、BosConfig ファイル Run でマークされたすべてのプロセスを開始することができます。
bos startup コマンドは、BosConfig ファイルの状況フラグを変更しないでプロセスを開始するため、永久的に使用可能にしないでサーバー・プロセスをテストするときには便利です。BosConfig ファイルの状況フラグを変更して、プロセスを停止および開始するには、プロセスを永続的に停止および開始する を参照してください。プロセスを停止および即時に再始動する方法については、プロセスの停止および即時の再始動 を参照してください。
注: | すべてのマシンのデータベース・サーバー・プロセスを同時に一時停止させないでください。そうすることによって、すべてのデータベースが完全に使用不可になります。 |
% bos listusers <machine name>
% bos shutdown <machine name> [<instances>+] [-wait]
ここで、
% bos listusers <machine name>
% bos startup <machine name>
ここで、
% bos listusers <machine name>
% bos startup <machine name> <instances>+
ここで、
デフォルトでは、BOS サーバーは、新しくインストールされたバイナリー・ファイルを毎日チェックして関連するプロセスを再始動しますが、プロセスを停止して即時に再始動したいときもあります。bos restart コマンドにはこの機能があり、影響のある各プロセスの完全に新しいインスタンスを開始します。
プロセスを再始動すると、サービスの障害が起こります。通常は、使用率が低い時間帯に再始動をスケジュールするのが最適です。長時間にわたってプロセスを稼働すると拡大する可能性があるコア・リークの可能性を減らすために、 BOS サーバーは、すべてのプロセスを週に 1 度、自動的に再始動します。 BOS サーバーの再始動時を設定する を参照してください。
% bos listusers <machine name>
% bos restart <machine name> -bosserver
ここで、
% bos listusers <machine name>
% bos restart <machine name> -all
ここで、
% bos listusers <machine name>
% bos restart <machine name> <instances>+
ここで、
デフォルトでは、BOS サーバーは週に 1 回再始動して、新規インスタンスはローカルの /usr/afs/local/BosConfig ファイルにある状況フラグ Run でマークされたすべてのプロセスを再始動します (-bosserver フラグを付けて bos restart コマンドを発行するのと同じです)。デフォルトの再始動時間は日曜日の午前 4 時です。週ごとの再始動は、コア・リーク が最も少なくなるように設計されているので、プロセスが仮想メモリーを継続して割り当てるときに拡大しますが、再び開放することはありません。メモリーを完全に使い果たすと、マシンが正しく機能しなくなります。
デフォルトでは、BOS サーバーは新規にインストールされたバイナリー・ファイルを 1 日 1 回検査します。/usr/afs/bin ディレクトリーにあるプロセスのバイナリー・ファイルの変更タイム・スタンプがプロセスを最後に始動した時刻よりも新しいことが分かると、プロセスは、新しいインスタンスが新規バイナリー・ファイルを使い始められるように再始動します。デフォルトのバイナリー検査時刻は、午前 5 時です。
ファイル・システムがアクセス不能なあいだ、再始動によって障害が起こる可能性があるため、再始動のデフォルト時は、使用頻度が最も少ないと思われる早朝です。任意のデータベース・サーバー・マシン上でデータベース・サーバー・プロセスを再始動すると、システム全体が一時的にすべてのユーザーに使用不可になります。その場合、他のタイプのプロセスを再始動すると、そのマシンのプロセスと対話しているユーザーだけが不便を感じることになります。一般的に、最長停止は、ファイル・サーバーがすべてのボリュームを再アタッチする必要があるため、fs プロセスを再始動したことにより発生します。
各ファイル・サーバー・マシンの BosConfig ファイルは、2 度の再始動時を記録します。現在の設定を表示するには、bos getrestart コマンドを発行します。時刻をリセットするには、bos setrestart コマンドを使用します。
% bos getrestart <machine name>
ここで、
% bos listusers <machine name>
% bos setrestart <machine name> "<time to restart server>" [-general] [-newbinary]
ここで、
希望する場合、時刻または日と時刻定義の前に、文字列 every または at を使用します。これらのワードを使っても意味は変化しませんが、bos getrestart コマンドの出力が理解しやすくなります。
注: | 指定した時刻が現在の時刻の 1 時間以内の場合には、BOS サーバーは、次の適切な時刻まで再始動を実行しません (時刻の場合には翌日または日と時刻の場合には翌週)。 |
各ファイル・サーバー・マシンの /usr/afs/logs ディレクトリーは、いくつかの AFS サーバー・プロセスの通常のオペレーションの際に起こる興味深い事象について説明するログ・ファイルを含みます。ログ・ファイルの自明の情報は、プロセスの障害、およびその他の問題を評価するのに役立ちます。ログ・ファイルをリモートで表示するには、bos getlog コマンドを使用します。サーバー・マシンに接続を確立して、テキスト・エディターまたはその他のファイル表示プログラム (たとえば、cat コマンド) を使用することもできます。
注: | データベース・サーバー・プロセスを定期的に終了して再始動しない場合は、ログ・ファイルが、管理できなくなるほど大きくなる可能性があります (たとえば、一般再始動時を使用不可にする場合)。この場合には、UNIX rm コマンドを定期的に発行して現在のログ・ファイルを削除するようにします。サーバー・プロセスは、必要に応じて新しいものを自動的に作成します。 |
% bos listusers <machine name>
% bos getlog <machine name> <log file to examine>
ここで、
完全パス名または相対パス名を指定すると、別のディレクトリーからファイルを表示することができます。相対パス名は、 /usr/afs/logs ディレクトリーの相対パスと解釈されます。