我的linux umask是002。
$ umask
0002
因此,新文件具有664权限。
$ touch new-file
$ ls -l
-rw-rw-r-- 1 david www-data 0 feb 11 11:37 new-file
但是,如果我从netbeans创建一个新文件(右键单击/ New / Empty文件),它有644权限。
$ ls -l
-rw-r--r-- 1 david www-data 0 feb 11 11:40 netbeans-file
我可以配置哪些权限包含从netbeans创建的新文件?
答案 0 :(得分:1)
正如@tripleee所说,Netbeans不是设置umask的shell的孩子。
umask命令位于.bashrc,只有在打开shell窗口但不在会话登录时执行。
将umask命令移动到.profile之后,包括netbeans在内的所有GUI程序都会正确地使用umask。
答案 1 :(得分:0)
umask
是一个掩码,在创建文件时,它的预期权限是混合的。这意味着如果Netbeans想要一个带rw-r的文件 - r--并且掩码是002(意味着你想删除为其他人写作),真正的保护将是rw-r-- R--。这背后的操作是:
real_rights = wanted_rights & ~umask
应用程序具有关于对其创建的文件的保护的偏好,并且用户具有他不想要的权限的偏好。