我在装有 Ubuntu 16.04 Gnome 的 PC 上设置了一个软件 RAID 阵列,生成的 /dev/md0 格式化为 EXT4 并挂载为 /RAID。我使用 Samba 共享此机器的 /RAID 中的各种目录(例如 /RAID/Documents)。新文件以模式位 744(来自 Windows 机器)或 644(来自 Linux 机器)创建。这导致一个用户创建了一个文件,而另一个用户无法编辑该文件。
在创建 Samba 共享用户时,我添加的用户没有主目录,因此没有与用户相关的 ~/.profile、~/.bashrc 等需要修改(我的登录名除外)。我尝试通过在 /etc/pam.d/common-session 中将“sessionoptionalpam_umask.so”更改为“sessionoptionalpam_umask.so 0000”来影响新的 umask。我还尝试更改 /etc/login.defs 中的 umask。然而,这些似乎都与新用户有关,而且它们似乎并没有为我带来任何改变。
如何影响新文件和目录的默认模式位,以便目录为 777,文件为 666?听起来一种方法可能是使用 ACL,但我希望不必经历那段学习过程!
提前致谢!斯科特
答案1
这导致一个用户创建一个文件,而另一个用户无法编辑该文件。
这是一种方法 - 但不是唯一的方法:如果您希望所有用户都能编辑彼此的文件,那么在更改所有新文件的模式时,请将这些用户的身份更改为有权访问共享文件夹的本地用户......就像您一样。例如:
[Documents]
path = /RAID/Documents
read only = no
valid users = mork mindy
force user = strobelight
只有 mork 和 mindy 可以访问共享,但一旦 samba 允许他们访问,他们的身份将更改为 strobelight。所有新文件都将以所有者 = strobleight 保存。无需更改模式。