Solaris カーネルのチューンアップ・リファレンスマニュアル

nfs:nfs_allow_preepoch_time

説明

タイムスタンプが正しくなかったり「負」であるファイルをクライアントから表示できるようにするかどうかを制御します。

従来、NFS クライアントも NFS サーバーも、返されるファイルの時間範囲を、これらの属性を使用してチェックすることはありませんでした。受信するタイムスタンプの値は符号なしの 32 ビット long であるため、すべての値が有効だったからです。

しかし、32 ビットの Solaris リリースが動作しているシステムでは、タイムスタンプの値が符号付きの 32 ビット long であるため、タイムスタンプが 1970 年 1 月 1 日より前の表示 (つまり「昔」の) になっていることがあります。

64 ビットの Solaris リリースが動作しているシステムでの問題は、これとは多少異なります。64 ビットの Solaris リリースでは、タイムスタンプ値が符号付きの 64 ビット long であるため、時刻フィールドがフルの 32 ビットの時刻を表しているのか、時刻フィールドが負の時刻、つまり、1970 年 1 月 1 日より前を表しているのかを判別できません。

32 ビットから 64 ビットに変換するときに時刻値に符号を付けるべきかどうかを決定することはできません。つまり、時刻値が本当に負数を表している場合は、時刻値に符号を付ける必要がありますし、本当にフルの 32 ビット時刻値を表している場合は、符号を付けるべきではありません。この問題は、フルの 32 ビット時刻値を無効にすることによって解決できます。

データ型

整数 (32 ビット)

デフォルト

0 (32 ビットのタイムスタンプを無効にする)

範囲

0 (32 ビットのタイムスタンプを無効にする) か、1 (32 ビットのタイムスタンプを有効にする)

単位

ブール値

動的か

はい

検査

なし

どのような場合に変更するか

「正常な」操作が行われていても、ファイルによっては、タイムスタンプ値がはるかに離れた将来や過去の日付に設定されることがあります。NFS でマウントされたファイルシステムを使用してこれらのファイルにアクセスすることが望ましい場合は、このパラメータを 1 にすれば、タイムスタンプ値をチェックなしで受け取ることができます。

安定性レベル

発展中