如何让特定用户创建的文件默认具有特定权限

如何让特定用户创建的文件默认具有特定权限

以下是一系列命令和结果输出:

$ touch testfile
$ stat -c'%a %A' testfile
644 -rw-r--r--

我必须做什么才能当用户遵循该序列时,我会得到以下输出:

664 -rw-rw-r--

答案1

POSIX定义该实用程序umask为当前实例(没有子 shell)或每个新调用的 shell(通过 .bash_profile、.bashrc 等)设置文件模式创建掩码。

以八进制或符号形式显示当前设置的掩码:

$ umask
0022
$ umask -S
u=rwx,g=rwx,o=rx

八进制数字表示从完全访问中删除的值:

$ umask 0002     # or: umask g+w
$ touch testfile
$ stat -c'%a %A' testfile
664 -rw-rw-r--

答案2

您需要设置掩码将该用户的 umask 设置为 0002。目前,它可能是 0022。您可以在 ~/.bash_profile 中使用“umask 0002”来定义它。

答案3

在 bash 下,umask 设置文件创建掩码。使用 umask 002 您可以获得所需的权限。您可以将其放在本地或全局的 .bash_profile 中。

相关内容