![设置默认文件权限:在 Linux 上创建具有组写权限的文件](https://linux22.com/image/799394/%E8%AE%BE%E7%BD%AE%E9%BB%98%E8%AE%A4%E6%96%87%E4%BB%B6%E6%9D%83%E9%99%90%EF%BC%9A%E5%9C%A8%20Linux%20%E4%B8%8A%E5%88%9B%E5%BB%BA%E5%85%B7%E6%9C%89%E7%BB%84%E5%86%99%E6%9D%83%E9%99%90%E7%9A%84%E6%96%87%E4%BB%B6.png)
我在一台服务器上运行 openSUSE 11.0,该服务器正在复制(和处理)大量文件。一些正在运行的服务接收到的新文件夹具有默认权限drwxr-sr-x
,文件为。我的目标是每次创建或复制新文件时,-rw-r--r--
文件夹drwxrwsr-x
和文件都具有默认权限。-rwxrwsr--
所以基本上我想保留该组的写权限。
此设置应该针对某个特定用户,而不是整个系统!
文件/文件夹的组和所有者始终相同,并且处理(服务和脚本)也是在该用户的权限下运行的。
该用户的 umask 为:0002。(因此 umask 不会减去组的默认写权限。)
在此先感谢您的帮助!
答案1
您在哪里设置了 Umask?
如果您使用 .bashrc,则只有在调用“bash”时它才会被获取,因此您的服务需要 bash 脚本,否则它将通过 pam_umask 使用用户的系统范围的 Umask 定义。
您应该使用 /etc/login.defs 并查看“man 8 pam_umask”