NFSがシステムクロックを同期する必要があるのはなぜですか?

NFSがシステムクロックを同期する必要があるのはなぜですか?

NFS 設定に関するいくつかのチュートリアルでは、異なるシステムのクロック間の違いを避けるために、NTP 設定に関するアドバイスも提供しています。

  • 時計のドリフトがファイルのタイムスタンプに衝突する方法で影響を与える可能性がありますか?
  • プロトコル自体に影響を与えますか(速度低下?キャッシュ不足?)
  • 同期されていないと見なされるオフセットはいくつですか?

ベストアンサー1

視差は、NFSプロトコル自体には影響を与えず、むしろタイムスタンプに依存する動作に影響します。 NFSv3以前は、NFSサーバーはタイムスタンプのメンテナンスのみを担当していました。 NFSv3はクライアント制御タイムスタンプを導入しましたが、すべての状況で使用されるわけではなく、すべての問題を解決するわけではありません。

従来の問題は、クライアントがファイルを更新するときにタイムスタンプがサーバーによって設定されることです。サーバーの時間がクライアントの時間と異なる場合、クライアントは予期しないタイムスタンプを表示します。これにより、タイムスタンプに依存するプログラム(Make、多くのメールクライアント、さらにはプログラムのダウンロードなど)に問題が発生する可能性があります。 Makeを例にすると、サーバーがクライアントの将来にある場合、ビルドされた成果物は実際よりも最新になり、必要に応じて再ビルドされない可能性があります。

クライアント制御タイムスタンプはこれらの問題のいくつかを解決しますが、すべてのケースではありません。特に、複数のクライアントが共有ファイルで作業していて、それ自体が同期されていない場合は、さらにそうです。

おすすめ記事