更改Linux共享文件夹的组权限

更改Linux共享文件夹的组权限

我在虚拟机上安装了 Oracle Linux 5。有一个使用 samba 创建的共享文件夹。我可以从我的 Windows 7 计算机访问此文件夹并复制文件。我的问题是,当我将文件复制到此文件夹时,组访问权限更改为无,但我需要访问权限:读取和写入(用于在 Weblogic 上自动部署)。

Samba 用户:linux,机器用户(登录名):linux,组:linux

smb.conf 文件:

[autodeploy]
path = /home/linux/Oracle/Middleware/user_projects/domains/base_domain/autodeploy
writeable = yes
browseable = yes
valid users = linux
force user = linux
force group = linux

尝试使用各种 chmod 和 chown 命令,但都无济于事。我认为 prombel 在 samba 用户中,但我没有找到如何修改 samba 用户组(我不确定是否可行)。

答案1

从这个


.... 但是,如果您要创建用于组访问的共享目录,则需要执行更多步骤。让我们在 smb.conf 文件中尝试为会计部门创建组共享:

 [accounting]
    comment = Accounting Department Directory
    writable = yes
    valid users = @account
    path = /home/samba/accounting
    create mode = 0660
    directory mode = 0770

我们做的第一件不同的事情是将 @account 指定为有效用户,而不是一个或多个单独的用户名。这是表示有效用户由 Unix 组帐户表示的简写。这些用户需要添加到系统组文件(/etc/group 或等效文件)中的组条目帐户中,才能被识别为该组的一部分。一旦他们被识别,Samba 就会将这些用户识别为共享的有效用户。

此外,您需要创建一个组成员可以访问的共享目录,并使用路径配置选项指向该目录。以下是为会计部门创建共享目录的 Unix 命令(假设 /home/samba 已经存在):

# mkdir /home/samba/accounting
# chgrp account /home/samba/accounting
# chmod 770 /home/samba/accounting

此 smb.conf 示例中还有另外两个选项,我们在上一章中都见过这两个选项。这两个选项是创建模式和目录模式。这两个选项设置新文件或目录可以拥有的最大文件和目录权限。在本例中,我们拒绝了所有人访问此共享的内容。(前面显示的 chmod 命令强化了这一点。)


因此,至少你需要更改valid users = @linux并添加

    create mode = 0660
    directory mode = 0770

编辑:上面为用户提供了能力使用这些权限(最大创建权限)创建文件。它不会强制执行。因此,如果这不起作用,您可以尝试添加:

force create mode = 0660
force directory mode = 0770
force user = linux
force group = linux

如果仍然不起作用,您可以尝试inherit permissions = yes在 770 上手动设置并设置父目录。

这一页有关分配强制权利的更多信息。

相关内容