无限循环遍历 NFS 安装的文件系统(QNAP 服务器)

无限循环遍历 NFS 安装的文件系统(QNAP 服务器)

我的 NFS 挂载最近出现了一个问题,无法遍历挂载的文件系统:

find /media/photos/

运行良好一段时间,然后退化为某个文件的无限循环:

/media/photos/2012/07/02/IMG_1180.jpg.xmp
/media/photos/2012/07/02/IMG_1180.jpg.xmp
/media/photos/2012/07/02/IMG_1180.jpg.xmp
/media/photos/2012/07/02/IMG_1180.jpg.xmp
...

服务器是运行 5.0.0.1853 的 QNAP TS-451+ NAS。客户端是运行 Ubuntu 20.04.3 (focal)、Linux 5.8.0-43-generic 的 Linux 机器。

我尝试过一些用于故障排除的方法:

  • find删除循环播放的文件。如果我这样做,find /media/photos会做同样的事情,但会在其他文件上循环。
  • 在 NAS 上运行文件系统检查。重新启动 NAS。不用找了。
  • 检查索引节点号,以防溢出。df -i /media/photos显示总共 6553600 个 inode,已使用 294671 个。这对我来说似乎不无道理。
  • find在其他文件系统上运行。/media/photos是唯一出现此问题的文件系统。我有来自同一 NAS 的其他挂载 NFS 的文件系统,这些文件系统更大或使用更多 inode,但它们都工作正常。
  • find /media/photos在其他主机上 运行。
    • 在 NAS 本身上,find在本地文件系统上运行效果很好。
    • 在运行 Monterey 的 Mac 上,find所有 NFS 安装的文件系统都可以完美运行。
  • 手动挂载文件系统。通常/media/photos由 autofs 挂载。我尝试systemctl stop autofs卸载所有文件系统,然后mount -t nfs -o ro mynas:/photos /mnt。现在find /mnt仍然出现上面的无限循环问题。
  • 查看/var/log。我没有看到任何值得注意的东西,但我也不确定除了带有字符串“NFS”的东西之外我应该寻找什么。

该安装座多年来一直工作良好。大约一周前才失败。这似乎与 QNAP 升级到 QTS 5.0.0.1853 一致(尽管我也定期更新客户端)。我猜测 QNAP 升级引起了 Ubuntu 的 NFS 客户端中的一些错误。不过,我不确定如何解决这个问题。更重要的是该怎么办。也许我不熟悉某些 NFS 选项,但 NFS 不是我的强项。

相关内容