CHMOD 与 UMASK - Linux 文件权限
CHMOD vs UMASK - Linux file permissions
在脚本中,我是否应该先创建一个文件,然后使用 CHMOD 分配权限(示例-首先使用 TOUCH 命令创建一个文件,然后使用 CHMOD 编辑该文件的权限)"OR" 我应该在创建文件时使用 UMASK 屏蔽权限吗?另外,请解释选择其中一个的利弊是什么?
注意:该文件不需要执行
简单地说-没关系。在大多数情况下,方法取决于您的需要。
如果您需要对整个脚本逻辑具有相同的文件权限,我宁愿在脚本的开头设置它并只创建文件而不是创建和 运行 chmod
命令。但是,您可以在脚本 运行ning chmod 0XXX -R /path/to/folder
结束时立即设置文件权限
您应该始终为特定用户设置 UMASK,因为您不希望每次您或应用程序创建文件时都设置权限。如果您想使用 CHMOD,您可以进一步 protect/release 任何特定文件(这种情况非常罕见)。除非您正在创建的文件需要特别 protected/accessed,否则您应该有一个 UMASK 为其权限工作。
- 为作为运行脚本的应用程序创建一个单独的用户和指定目录。
- 设置合适的 UMASK。
- 如果需要请指定额外的权限
与大多数事情一样,它取决于比您提供的信息多得多的信息:-)
但是,以封闭的方式做事然后再开放通常是个好主意,而不是相反。这是基本的 "Security 101".
例如,假设您正在为用户创建一个文件,而该用户愚蠢地选择了一个 umask
为零(实际上所有创建的文件都将对所有人具有完全权限)。
在那种情况下,文件是完全开放的,任何人都可以在创建和 chmod
阶段之间切换,虽然这次你可以 最小化,但你不能真的完全删除它。
对于我们当中真正偏执的人来说,最好以尽可能封闭的方式实际创建文件(对于所有者可能只是 rw
),做任何你必须做的事情来创建内容该文件,然后使用 chmod
将其打开到所需的任何状态,例如:
( umask 177 ; create_file myfile.txt ; chmod 644 myfile.txt )
在脚本中,我是否应该先创建一个文件,然后使用 CHMOD 分配权限(示例-首先使用 TOUCH 命令创建一个文件,然后使用 CHMOD 编辑该文件的权限)"OR" 我应该在创建文件时使用 UMASK 屏蔽权限吗?另外,请解释选择其中一个的利弊是什么?
注意:该文件不需要执行
简单地说-没关系。在大多数情况下,方法取决于您的需要。
如果您需要对整个脚本逻辑具有相同的文件权限,我宁愿在脚本的开头设置它并只创建文件而不是创建和 运行 chmod
命令。但是,您可以在脚本 运行ning chmod 0XXX -R /path/to/folder
您应该始终为特定用户设置 UMASK,因为您不希望每次您或应用程序创建文件时都设置权限。如果您想使用 CHMOD,您可以进一步 protect/release 任何特定文件(这种情况非常罕见)。除非您正在创建的文件需要特别 protected/accessed,否则您应该有一个 UMASK 为其权限工作。
- 为作为运行脚本的应用程序创建一个单独的用户和指定目录。
- 设置合适的 UMASK。
- 如果需要请指定额外的权限
与大多数事情一样,它取决于比您提供的信息多得多的信息:-)
但是,以封闭的方式做事然后再开放通常是个好主意,而不是相反。这是基本的 "Security 101".
例如,假设您正在为用户创建一个文件,而该用户愚蠢地选择了一个 umask
为零(实际上所有创建的文件都将对所有人具有完全权限)。
在那种情况下,文件是完全开放的,任何人都可以在创建和 chmod
阶段之间切换,虽然这次你可以 最小化,但你不能真的完全删除它。
对于我们当中真正偏执的人来说,最好以尽可能封闭的方式实际创建文件(对于所有者可能只是 rw
),做任何你必须做的事情来创建内容该文件,然后使用 chmod
将其打开到所需的任何状态,例如:
( umask 177 ; create_file myfile.txt ; chmod 644 myfile.txt )