我在一个运行 Linux(Debian 和 Ubuntu)的实验室工作。用户名和组名由 NIS 和 yp 处理。我们有一些共同的用户,每个人都可以访问来运行实验,然后我们每个人都有自己的用户,此外还有一个共同的组,我们都是其中的一员。
我怎样才能使共享 /home/
驱动器(NFS)上的所有文件和目录都被用户/组读/写(/可执行)?基本上我想要的是
chmod -R 664 /home
chgrp -R commongroup /home
或等效地 umask 0002
。
但是运行上述命令只能修复文件夹中的当前文件,而 umask 仅适用于单个用户,并且每次用户登录时都必须运行,即。在 .bashrc
文件中(这是否适用于通过 gnome 更改模式?)。是否有系统范围的命令或设置可用于确保我们的公共组对公共文件具有写入权限?
原文由 HansHarhoff 发布,翻译遵循 CC BY-SA 4.0 许可协议
Debian 和 Ubuntu 都附带 pam_umask 。这允许您在
/etc/login.defs
中配置 umask,并让它们在系统范围内应用,无论用户如何登录。要启用它,您可能需要添加一行到
/etc/pam.d/common-session
阅读或者它可能已经启用。然后编辑
/etc/login.defs
并将UMASK
行更改为(默认为
022
)。请注意,用户仍然可以在自己的
~/.profile
或~/.bashrc
或类似文件中覆盖 umask,但是(至少在新的 Debian 和 Ubuntu 安装中)不应该在/etc/profile
或/etc/bash.bashrc
。 (如果有,只需删除它们。)