NFS 共享可从 Nautilus 访问,但不能从应用程序访问

NFS 共享可从 Nautilus 访问,但不能从应用程序访问

我在使用 NFS 通过家庭 LAN 访问小型 PC 上的文件时遇到了一些问题。

当我使用 Nautilus 或命令行时,它似乎运行正常,但当我尝试保存 LibreOffice 或 GIMP 等应用程序时,会出现几秒钟的延迟,然后出现“写入错误”。当从 NFS 共享打开现有文件时,它告诉我“此文件已被未知用户锁定以供编辑”。

这些应用程序可以毫无问题地打开和保存本地驱动器上的文件。

我当前的解决方法是以只读方式打开并将文件保存到我的桌面上,然后使用 Nautilus 将其复制到我最初打开它的位置。

我的本地电脑正在使用 Ubuntu 20.04,服务器显示它处于:“5.3.0-53-generic #47~18.04.1-Ubuntu SMP”

我的本地 /etc/fstab 条目:

192.168.50.186:/nas/shared /shared nfs rsize=8192,wsize=8192,timeo=14,hard,nfsvers=3

在服务器上我的 /etc/exports 文件:

/nas/shared   192.168.50.186/255.255.255.0(rw,insecure,no_subtree_check,async)

在 18.04 中,该问题仅影响 LibreOffice,但现在它还影响 GIMP 和 Krita 以及其他版本。

答案1

我终于弄清楚了问题所在——组权限。

NAS 服务器上的文件对于名为“nasusers”且 id=1002 的组都具有 R/W/X 权限。

这可以通过ls -la服务器上的文件夹简单查看。

在本地执行相同的命令会将组显示为“1002”,因为本地客户端计算机上不存在组“nasusers”。为了解决这个问题,我运行了(在客户端本地):

sudo groupadd -g 1002 nasusers

运行id表明我的用户不是该组的成员。要将自己添加到该组,我运行了以下操作(在客户端本地):

sudo adduser james nasusers

另外,在服务器上我将共享文件的权限设置为 770,因此所有者和组拥有完全权限,而其他人则没有权限。

这使得我能够从 LibreOffice 和 GIMP 打开和保存来自 NAS 服务器的文件而不会出现错误。

答案2

根据链接(以及您迄今为止所做的测试),从您的主目录向您的共享子目录添加另一个挂载,并使用 libreoffice 进行测试。
(您可以更改当前挂载,但我尽量不要过多地侵入您当前的设置)

192.168.50.186:/nas/shared/Libreofficestuff /home/yourusername/sharefoldername nfs rsize=8192,wsize=8192,timeo=14,intr,nfsvers=3

我认为你可能必须使用 subtree_check

/nas/shared   192.168.50.186/255.255.255.0(rw,insecure,subtree_check,async)

相关内容