You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让NFS服务器上客户端创建的文件统一使用指定UID/GID

实现NFS共享目录固定UID/GID(不受客户端权限影响)

可以实现,通过NFS的导出参数配置,就能强制让客户端创建/修改的所有文件归服务器端指定的UID/GID(比如plex用户)所有,完全不受客户端自身UID/GID的限制。核心方案如下:

一、核心配置:all_squash + anonuid/anongid

这是NFS官方提供的标准方法,直接将所有客户端的用户身份映射到服务器端的指定用户。

1. 获取plex用户的UID和GID

在NFS服务器上执行命令,查看目标用户的UID和GID:

id plex

输出示例:uid=1001(plex) gid=1001(plex),记下这里的UID(如1001)和GID(如1001)。

2. 修改NFS导出配置

编辑NFS的导出配置文件/etc/exports,找到对应Plex库的共享条目,添加all_squash、anonuid、anongid参数:
原条目示例:

/mnt/plex-library 192.168.1.0/24(rw,sync)

修改后:

/mnt/plex-library 192.168.1.0/24(rw,sync,all_squash,anonuid=1001,anongid=1001)

参数说明:

  • all_squash:强制将所有客户端用户(包括root)的身份映射为服务器端的匿名用户
  • anonuid:指定匿名用户对应的UID(这里填plex的UID)
  • anongid:指定匿名用户对应的GID(这里填plex的GID)

3. 生效配置

执行命令重新加载NFS导出配置:

exportfs -ra

如果是systemd系统,也可以重启NFS服务确保配置完全生效:

systemctl restart nfs-server

二、验证效果

在客户端挂载该共享后,创建或上传文件,回到服务器端查看文件权限:

ls -l /mnt/plex-library/新文件名称

输出中的所有者应显示为plex:plex,和客户端使用的本地用户无关。

三、额外注意事项

  • 确保共享目录本身的权限正确,避免因目录权限问题导致写入失败:
chown -R plex:plex /mnt/plex-library
chmod -R 755 /mnt/plex-library
  • 如果需要保留客户端root用户的权限(不推荐Plex场景),可以用root_squash代替all_squash,但all_squash能避免客户端root篡改共享文件,安全性更高。

内容的提问来源于stack exchange,提问作者Milad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 20:50:31