/etc/fstab 以用户身份挂载?

/etc/fstab 以用户身份挂载?

大家早上好,

当我使用下面的 fstab 命令时,它似乎以 root 身份挂载目录,导致我无法编辑任何内容:

192.168.1.74:/volume1/Barry/Plex/tv2  /mnt/plex/media/tv2  nfs  nofail,defaults,rw,user, 0  0

192.168.1.74:/volume2/Barry2/Plex/tv  /mnt/plex/media/tv2  nfs  nofail,defaults,rw,user, 0  0


dandy@thehost:/mnt/plex/media$ ls -l
drwxrwxrwx  74  1024 users  36864 Jul  8 18:49 tv
drwxrwxrwx  13 root  root   36864 Jul  2 16:38 tv2

dandy@thehost:/mnt/plex/media$ sudo chown dandy:dandy tv2
chown: changing ownership of 'tv2': Operation not permitted

有人可以告诉我我做错了什么吗?

谢谢

- 编辑 -

我目前使用的是以下版本:

分销商 ID:Ubuntu 描述:Ubuntu 22.04.2 LTS 发布:22.04 代号:jammy

研究 NFS3 这听起来确实很有趣,但是我不确定是否需要将 UID 添加到下面建议的行中。

192.168.1.74:/volume1/Barry/Plex/tv2 *(rw,no_subtree_check,all_squash,anonid=0,anaongid=0)

我尝试运行以下命令:

'sudo mount 192.168.1.74:/volume1/Barry/Plex/tv /home/dandy/mnt/media/tv *(rw,no_subtree_check,all_squash,anonid=0,anaongid=0)' 但我得到 'mount: bad usage '

感谢您的所有帮助,很抱歉给您带来麻烦。

- 编辑

不确定如何解决帖子,但谢谢 Marco,问题解决了。

答案1

使用 NFS 时,服务器会关注安全性。有多个级别和多个安全设置。

服务器上的某个级别以只读形式导出。无法在客户端上进行更改。

使用 NFS v3 时,安全性是根据用户 ID(数字)来处理的。
这意味着客户端上的用户 ID 必须与服务器上的用户 ID 相同。客户端上的 root 用户的处理方式不同。默认情况下,用户“0”(root)映射到服务器上的用户“nobody”。这通常不授予用户 root 访问权限。服务器设置可以更改此行为。
在您的例子中,用户“dandy”需要在客户端和服务器上具有相同的用户 ID,以让用户“dandy”读写服务器上属于用户“dandy”的所有文件/目录。

NFS v4 提供了更多安全选项,可以在服务器默认情况下,
它与 NFS v3 相同,另外还带有一些通常不使用的“Kerberos”,因为它需要额外的专业知识和配置。

查看man nfsman exports

提醒:在网络环境中,您需要安全性,即使这需要付出额外的努力。

当然,如果服务器上的设置正确,您可以禁用所有安全性并让每个人都可以读写,方法是在服务器在相应的“exports”文件中(使用您的示例):

NFS v3:

/volume1/Barry/Plex/tv2 *(rw,no_subtree_check,all_squash,anonid=0,anaongid=0)

NFS 版本

/volume1/Barry/Plex/tv2 *(rw,sec=sys,no_subtree_check,all_squash,anonid=0,anaongid=0)

请注意,这将为所有可以安装它的人提供以用户“root”身份进行的完全读写访问权限。

客户您可以使用(根据您的示例):

sudo mount 192.168.1.74:/volume1/Barry/Plex/tv2  /mnt/plex/media/tv2

或者在“/etc/fstab”中:

192.168.1.74:/volume1/Barry/Plex/tv2  /mnt/plex/media/tv2  nfs  nofail,defaults,rw,user 0  0

相关内容