无法将 Samba 共享挂载为读写

无法将 Samba 共享挂载为读写

我已经在机器 msc001y 上安装了 Samba。我想访问它在 msc001 上的共享文件夹。

两台机器具有相同的用户(在 Samba 上镜像)

msc (5001), james (5002), rachel (5003).

两台机器具有相同的组:

grp_public (2001), grp_personal (2002)

mscjames并且rachel所有人都可以访问grp_public.仅jamesrachel有权访问grp_personal.

我表演过:

chgrp -R grp_public /mnt/local/int001/media/public/
chgrp -R grp_personal /mnt/local/int001/media/personal/

chmod 2775 /mnt/local/int001/media/public/
chmod 2770 /mnt/local/int001/media/personal/

我已在 msc001y 上添加到 smb.conf:

在[全球]内

# Inherit ownership of the parent directory for new files and directories
inherit owner = unix only
# Inherit permissions of the parent directory for new files and directories
inherit permissions = yes

create mask = 0775
directory mask = 2775
force create mode = 0775
force directory mode = 2775

然后在...之内

[public]

comment = Public Stuff
path = /mnt/local/int001/media/public
public = yes
writable = no
printable = no
write list = @grp_public, msc, james, rachel
inherit acls = yes

在挂载 [public] 之前,挂载点列出为(即:所有者和组的 RWX):

drwxrwxr-x 2 msc grp_public    0 Jul 25 23:07 public

一旦我安装了它,它就变成了(即:RWX 代表所有者,RX no W 代表组):

drwxr-xr-x 2 msc grp_public    0 Jul 25 23:07 public

它安装有:

//msc001y/public /mnt/remote/msc001y/public cifs user,nofail,_netdev,vers=3.1.1,uid=msc,gid=grp_public,credentials=/mnt/local/data/.Credentials/james.cred 0 0

如果我登录时msc我可以读写,因为它是所有者,但如果我是詹姆斯或雷切尔,我就会陷入只读状态。

为什么之前是RWX的文件夹,挂载后默认是RX?

注意:共享文件夹中的所有文件均为 RWX|RWX|R_X

答案1

@grp_public, @msc, @james, @rachelwrite list.但只是grp_public一个团体;mscjamesrachel是用户。

正确的写入列表应该是:

write list = msc, james, rachel, @grp_public

另请参阅man 5 smb.conf

write list (S) 这是被授予服务读写访问权限的用户列表。如果连接用户在此列表中,则无论只读选项设置为何,他们都将获得写入权限。该列表可以包含使用 @group 语法的组名称。请注意,如果用户同时位于读取列表和写入列表中,那么他们将被授予写入访问权限。

Default: write list =

Example: write list = admin, root, @staff

相关内容