Samba共享配置需求:允许userA访问但创建的文件/文件夹归属userB
Samba共享配置需求:允许userA访问但创建的文件/文件夹归属userB
嗨,我来帮你搞定这个Samba配置的问题!先理清楚你的场景:你现在有个仅对userA开放的Samba共享,共享目录/path/to/share实际归属userB,想要实现userA通过Samba连接后,创建的所有文件、文件夹的归属和权限都绑定到userB,还不能用粘滞位——这个需求完全可以通过Samba自带的配置参数来实现。
你只需要在现有的共享配置块里添加两个关键参数:force user和可选的force group,具体修改后的配置如下:
[data] path = /path/to/share guest ok = no browseable = yes valid users = "userA" read only = no force user = userB force group = userB # 可选,如果你需要强制组归属也绑定到userB的组的话
原理说明:
force user参数会强制将所有通过该共享发起的操作,都映射为指定用户(这里就是userB)的身份执行。也就是说,哪怕是userA连接上来创建文件,Samba都会以userB的权限去创建,所以新文件/文件夹的所有者自然就是userB。- 搭配
force group的话,可以确保文件的所属组也同步为userB的主组,进一步统一权限归属。
后续操作:
修改完配置后,记得重启Samba服务让配置生效,命令根据你的系统不同略有区别:
- 用systemd的系统(比如Ubuntu 16.04+、CentOS 7+):
sudo systemctl restart smbd - 用init.d的老系统:
sudo service smbd restart
另外要确认一下/path/to/share本身已经给userB设置了足够的读写权限(你提到目录属于userB,这一步应该没问题),这样userB身份的操作才能正常进行。
备注:内容来源于stack exchange,提问作者IMTheNachoMan
相关产品推荐
相关产品推荐

