Solaris 可调参数参考手册

nfs:nfs_allow_preepoch_time

说明

控制具有错误时间标记或时间标记的文件在客户机上是否可见。

以前,NFS 客户机或 NFS 服务器都不对返回的文件时间执行任何范围检查。线上时间标记值不带符号并且长度为 32 位。因此,所有值都合法。

但是,在运行 32 位 Solaris 内核的系统上,时间标记值带有符号并且长度为 32 位。因此,可以存在表示 1970 年 1 月 1 日之前或纪元之前的时间标记。

在运行 64 位 Solaris 内核的系统上,问题稍有不同。64 位 Solaris 内核上的时间标记值带有符号并且长度为 64 位。无法确定时间字段表示的是完整的 32 位时间还是负时间(即 1970 年 1 月 1 日之前的时间)。

从 32 位转换为 64 位时,无法确定是否要对时间值进行符号扩展。如果时间值确实为负数,则应该对此时间值进行符号扩展。但是,如果时间值实际上表示完整的 32 位时间值,则不应对此时间值进行符号扩展。只需禁用完整的 32 位时间值即可解决此问题。

数据类型

整数(32 位)

缺省值

0(禁用 32 位时间标记)

范围

0(禁用 32 位时间标记)或 1(启用 32 位时间标记)

单位

布尔值

是否为动态

验证

何时更改

即使在正常运行期间,也可以将某些文件的时间标记值设置为将来很长的时间或过去很长的时间。如果希望使用已挂载 NFS 的文件系统访问这些文件,应将此参数设置为 1 以允许不经过检查便可传递时间标记值。

承诺级别

不稳定