AutoClientシステムには、CacheFS 整合性モデルに新しいキャッシュ整合性モードが追加されています。この整合性モードのことを demandconst と言い、cfsadmin(1M) コマンドに指定できる新しいオプションです。このモードでは、通常サーバーではファイルが変更されません。サーバーでファイルを変更する場合は、必ずシステム管理者が整合性検査を行うことが前提になっています。したがって、明示的に要求しない限り整合性検査は行われません。ただし、AutoClient システムのブート時に CacheFS をマウントすると、整合性検査が自動的に実行され、以後 24 時間ごとに整合性検査を実行するようにデフォルトで AutoClient システムが設定されます。このモデルでは、整合性検査の頻度を下げることによってネットワークへの負荷が軽減されるので、AutoClient のパフォーマンスが改善されます。
システムの / (ルート) 領域は他のシステムにはエクスポートされないので、データーに不整合が生じる可能性はごくわずかです。システム自身がデーターを変更した場合でも、変更はキャッシュを介して反映されるので、キャッシュに不整合が生じることはありません。システムの / (ルート) 領域にあるデーターを変更できるのは、サーバーのスーパーユーザーだけです。
/usr ファイルシステムも同じように、サーバーが読み取り専用としてエクスポートします。したがって、/usr ファイルシステムを変更できるのは、サーバーのスーパーユーザー (システム管理者) だけです。キャッシュファイルシステムを対応するバックファイルシステムと同期化するには、autosync(1M) コマンドを使用してください。
各 AutoClient システム、ネットワーク上にあるすべてのローカル AutoClient システム、指定したファイルに記述されたすべての AutoClient システムを、バックファイルシステムと一致するように更新することができます。この更新処理は、/usr 共有ディレクトリや 1 つまたは複数のシステムの / (ルート) ディレクトリに新しいパッケージを追加した時、およびパッチを追加した時に実行する必要があります。以下に、autosync(1M) の使用方法を説明します。このコマンドは、サーバーから実行します。
autosync コマンドを使用するには、sysadmin グループのメンバーになっている必要があります。
sysadmin グループの作成については、「AutoClient のアクセス権の設定」を参照してください。
autosync コマンドをオプションなしで実行すると、autosync コマンドを実行しているサーバーからローカルなネットワーク上のすべての AutoClient システムにあるすべてのキャッシュファイルシステムが更新されます。
% autosync |
更新できなかったシステムがある場合は、そのシステム名が表示されます。何も表示されなければ、問題なく更新が実行されています。
システム pluto、genesis、saturn の更新が失敗した場合の例を示します。
% autosync pluto:: failed: genesis:: failed: saturn:: failed: |
メッセージが何も表示されなければ、問題なく更新が実行されています。
autosync コマンドに -h オプションを付けて実行すると、ネットワーク上で指定された AutoClient システムにあるすべてのキャッシュファイルシステムが更新されます。
% autosync -h hostname |
-h |
1 つのシステムを指定します。 |
hostname |
更新するキャッシュのあるシステム名を指定します。 |
AutoClient システム pluto にあるすべてのキャッシュファイルシステムを更新する例を示します。
% autosync -h pluto |
システムを更新できなかった場合は、次のメッセージが表示されます。
% autosync -h pluto pluto:: failed: |
メッセージが何も表示されなければ、問題なく更新が実行されています。
次のように autosync コマンドを実行すると、AutoClient システムの特定のファイルシステムが、バックファイルシステムに合わせて更新されます。
% autosync -h hostname cached-filesystem |
-h |
1 つのシステムを指定します。 |
hostname |
更新するキャッシュのあるシステム名を指定します。 |
cached-filesystem |
更新するキャッシュファイルシステム名を指定します。 |
AutoClient システム foo にあるキャッシュファイルシステム /usr を更新する例を示します。
% autosync -h foo /usr |
ファイルを作成して、バックファイルシステムと同期をとるシステムの名前を記述します。
ファイルはどこに置いてもかまいません (たとえば /tmp や /home)。autosync コマンドに引き数を指定せずに実行した場合に、更新されなかったシステムが複数ある時には、更新されなかったシステム名をこのファイルに入力してください。たとえば、1 行に 1 つのシステム名を記述します。
host_file ファイルに記述されたすべての AutoClient システムを更新します。
% autosync -H host_file |
-H |
ファイルに記述されたすべての AutoClient システムを更新します。 |
host_file |
ネットワーク上にある更新するすべての AutoClient システム名が記述されたファイルです。 |
net_hosts 中に記述されたすべての AutoClient システムを更新する例を示します。
% autosync -H net_hosts |
たとえば、net_hosts ファイルには次のように記述します。
mars jupiter saturn |
次のように autosync コマンドを使用して、AutoClient システムにあるすべてのキャッシュファイルシステムを更新することができます。このコマンドは、サーバーからではなく更新するシステム自体から実行します。
% autosync -l |
更新の必要なファイルシステムを指定することもできます。
/usr ファイルシステムをクライアントから更新する例を示します。
% autosync -l /usr |