是否可以使所有新创建的文件在创建时都具有执行权限?为什么我不能默认授予它?
问问题
12300 次
3 回答
6
文件的 umask 从 666 中减去,目录的 umask 从 777 中减去。因此,如果您的 umask 为 002,并且您创建了一个目录,则得到 775(777 - 002),如果创建文件,则得到 664(666 - 002) )。
于 2013-11-27T21:21:08.137 回答
3
umask 仅减去默认文件和目录权限。
777 initial file permissions
111 execute bit is not set by default
---
666 default file permissions
022 subtract default Unix umask
---
644 voila, final file permissions
必须为所有者设置执行位才能 cd 进入他们创建的目录,因此设置了用户执行权限,导致目录权限为 744,当使用上述 umask 时。
默认情况下,我没有找到设置执行的方法。无论如何,这将是一个糟糕的魔力,但我目前正在研究我正在编写的网络安全课程。
于 2017-10-10T19:35:00.690 回答
-5
以安全的方式?不。以不安全的方式:只需通过在文件中umask
添加来更改,其中表示您希望的权限掩码。umask xxx
~/.bashrc
xxx
笔记:
- 这是不安全的(我是否已经提到过?其他人提到过。)
- 它可能会导致很多问题。一种是在某些系统上不允许创建文件)
推荐方式:
仅对实际需要执行权限的文件执行此操作。
chmod +x /the/file
于 2013-03-24T15:01:31.510 回答