在 NFS 文件服务器上获取不规则时间戳

在 NFS 文件服务器上获取不规则时间戳

情况如下:

我们有一个文件服务器,它没有为一小部分文件(数百万个文件中的 77 个)保存时间戳。它反而会写入默认的 mtime 1969-12-31 19:00(Unix 纪元)。

当这种情况发生时,它会不定期地发生,没有固定的模式(即这里有一个文件,那里同一目录中的一组文件等等)。以这种方式加盖时间戳的文件已通过 NFS 上传到服务器。

值得注意的是,我们仅看到这种情况发生在该服务器上的 NFS 共享中,并且这种情况并未发生在任何服务器系统文件中,它似乎仅限于 NFS 共享。

一些附加信息:

  • 该服务器运行的是 Ubuntu Server 9.04
  • NFSv4 用于文件服务。以下是导出行:
    /home/file_storage 10.0.0.1/24(rw,sync,no_root_squash,no_subtree_check)
  • 我们最近使用 rsync 将文件从旧文件服务器迁移到此服务器
  • 该服务器具有使用 3ware 9650SE 控制器的硬件 RAID 5 阵列。
  • 文件系统为 ext3,在单个根分区上配备 LVM 和 LUKS/DMCRYPT
  • 该服务器定期与 ntpd 同步其时间。

更新

根据评论的要求更新了上面的文件系统和分区信息。

答案1

唯一的挂载点是 raid 控制器 /home/file_storage 吗?换句话说,该服务器上的其他文件系统是位于同一个 raid 控制器上还是位于不同的控制器上?

如果 raid 控制器上只有 nfs 共享,那么我会担心写入了 0 块,而您会看到它们被归零了。对不同的文件运行一堆 md5sum 可能很有价值,然后在一周后运行它们,看看哪些文件发生了变化。

另一方面,如果同一个 raid 控制器上有很多文件系统,而唯一出错的是 nfs 共享文件系统,那么可能是网络数据包损坏了。我们过去曾看到过文件中包含随机的 8k 0 块。也就是说,每个人都认为 nfs 块已写入,但实际上并非如此。这可能是网络问题,然后您应该会在界面上看到错误。

但我会选择第一个。

答案2

您是在本地还是仅在远程看到奇怪的时间?如果您担心文件系统集成,我会考虑运行 CERN 的文件系统检查器,当我找到它时,我会添加一个链接。(它会不断将文件写入系统,然后等待并读取它)。

3ware 卡总体来说相当不错。

答案3

我对 NFS 上的文件时间的理解是它们通常由客户端设置,所以也许你有一台认为它始终为零时间的机器?

相关内容