我想设置权限,以便每当目录由“用户”创建,则其默认权限应为775。
但当该“用户”创建新的文件那么默认权限应该是774。
我怎样才能实现这个目标?
答案1
我不确定如何获取这些确切的权限,但使用 umask,您可以设置彼此 111 内的文件和目录的权限。
此网站解释了它的工作原理: http://kb.iu.edu/data/acge.html
例如:
umask 002
会给出目录 775 和文件 664。这不是您正在寻找的确切内容,但您可能能够找出与 umask 相关的东西。
默认的 umask 可以在 /etc/profile 中找到。可以通过编辑 ~/.profile 中的 umask 为每个用户覆盖该值。
注意:大多数 unix 机器的默认 umask 是 022,即:文件为 644 (rw-r--r--),目录为 755 (rwxr-xr-x)。
答案2
Umask 解释
新创建的文件和目录的默认文件权限是标准权限(rw-rw-rw
对于文件,rwxrwxrwx
对于目录)减去当前 umask 设置。umask 设置为 000 将保留标准权限,而设置为 777 将删除所有权限。
umask 中的三个数字分别代表用户、组和任何人的权限。该数字代表是否删除特定权限的三个二进制数字。
d - rwx
-------
0 - 000 (rwx)
1 - 001 (rw-)
2 - 010 (r-x)
3 - 011 (r--)
4 - 100 (-wx)
5 - 101 (-w-)
6 - 110 (--x)
7 - 111 (---)
要计算新文件在给定特定 umask 时将具有哪些权限,请从默认权限开始并减去 umask。
orig rwx rwx rwx (777, default directory permission)
umask 000 010 010 (022)
result rwx r-x r-x (755)
orig rw- rw- rw- (666, default file permission)
umask 000 010 010 (022)
result rw- r-- r-- (644)
orig rwx rwx rwx (777, default directory permission)
umask 000 000 010 (002)
result rwx rwx r-x (775)
orig rw- rw- rw- (666, default file permission)
umask 000 000 010 (002)
result rw- rw- r-- (664)