Answers:
当您使用umask
077时,仅该用户具有读取,写入和执行权限。用户肯定可以打开(“执行”)目录(在我的答案中,请参见有关为什么必须执行目录的更多信息)。但是,必须始终通过输入chmod u+x myfile
; 使文件成为可执行文件。它们永远不会自动执行。umask
此答案提供了一些更有用的信息:
您出现问题的可能性可能是您输入的值可能略有错误,导致使用了不同的umask,或者尚未永久设置该值。如果您输入umask 077
终端,它将仅对终端的该会话有效。要使其永久为您的用户使用,只需将其添加umask 077
到您的中~/.profile
。为系统默认设置umask
是/etc/login.defs
; 它曾经在/etc/profile
。另请参见的联机帮助页的手册页pam_umask
,它是处理的分配的pam模块umask
。
以下示例来自成功设置的umask 077
:
1)对于文件夹创建:mkdir doc
选中时,stat doc
提供了正确的权限以及一个“可执行”文件夹:
File: `doc'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 801h/2049d Inode: 6425268 Links: 2
Access: (0700/drwx------) Uid: ( 1000/ mike) Gid: ( 1000/ mike)
Access: 2012-09-12 11:33:01.236675420 +0100
Modify: 2012-09-12 11:33:01.236675420 +0100
Change: 2012-09-12 11:33:01.236675420 +0100
Birth: -
2)用于文件创建:touch new
选中则stat new
赋予正确的权限;该文件仅在您使用时才可执行chmod +x
:
File: `new'
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 801h/2049d Inode: 6303902 Links: 1
Access: (0600/-rw-------) Uid: ( 1000/ mike) Gid: ( 1000/ mike)
Access: 2012-09-12 11:34:58.272676270 +0100
Modify: 2012-09-12 11:34:58.272676270 +0100
Change: 2012-09-12 11:34:58.272676270 +0100
umask
077的A 将显示所示的权限,但是如果在umask 077
正确设置后仍然有权限问题(如上所述),我们可以进一步进行研究。
所述的umask值将被用于适当地修改默认fmask文件权限(许可基地0666)和DMASK对于目录/文件夹的权限(许可基地0777)。
有效的fmask和dmask值将通过减去umask值来计算(八进制计算)。
因此,umask 0022将导致fmask获得值0644(即0666-0022),而dmask将为0755(即0777-0022)。
该umask的 0077防止文件被不仅世界(由最终的八进制数字表示),而且您的任何访问创建组成员(由倒数第二个八进制数字表示)。