可以使用八进制或符号表示法设置文件创建掩码。要使更改永久化,请在/etc/profile文件等全局配置文件中设置新的umask值,这将影响所有用户或用户的shell配置文件,如,~/.profile,~/.bashrc 或 ~/.zshrc会影响用户。用户文件优先于全局文件。
在更改umask值之前,请确保新值不会带来潜在的安全风险。应该非常谨慎地使用低于022的限制值。例如,umask 000表示任何人都对所有新创建的文件具有读,写和执行权限。
假设我们想为新创建的文件和目录设置更严格的权限,以便其他人无法cd到目录和读取文件。我们想要的权限是目录750和文件640。
要计算umask值,只需从默认值中减去所需的权限:
Umask值:777-750 = 027
以数字表示法表示的所需umask值是027。
要在系统范围内永久设置新值,请使用文本编辑器打开/etc/profile文件:
sudo nano /etc/profile
并在文件的开头更改或添加以下行:
umask 027
要使更改生效,请运行以下源命令或注销并登录:
source /etc/profile
要验证新设置,我们将使用mkdir和touch创建一个新文件和目录:
mkdir linuxidc
touch linuxmi
如果使用ll命令检查权限,您将注意到新文件具有640和新目录750权限,如我们所愿:
输出示例:
drwxr-x--- 2 linuxidc linuxidc 4096 Jul 23 22:48 linuxidc/
-rw-r----- 1 linuxidc linuxidc 0 Jul 23 22:49 linuxmi
设置文件创建掩码的另一种方法是使用符号表示法。 例如,umask u=rwx,g=rx,o=与umask 027相同。
总结
在本指南中,我们已经解释了Linux权限以及如何使用umask命令为新创建的文件或目录设置权限。
有关更多信息,请在终端中键入man umask。
如果您有任何疑问,请在下面留言。