当你创建一个文件的时候你可能会问,这些文件的权限是从哪里来的,答案是 umask。了解和正确使用umask对于确保文件和目录的安全性至关重要。本文将深入介绍 umask 的概念、用法和设置方法。
正文:
1. 什么是 umask?
- umask 是用户文件创建掩码的缩写,它决定了新创建文件和目录的默认权限。
- umask 值是一个三位数的八进制数,用于屏蔽文件和目录的权限位。
2. umask 的工作原理:
- umask 值中的每一位代表一个权限位,分别对应于读、写和执行权限。
- umask 值从现有权限中进行屏蔽,确定新创建文件和目录的默认权限。
- umask 值是指需要屏蔽掉的权限位,而不是要设置的权限位。
3. umask 值的表示方式:
- umask值是八进制的,因此需要使用八进制表示。
- 可以使用 0 开头表示八进制数,例如 022 表示八进制的 22。
4. umask 的设置方法:
- umask 值可以在登录 shell 的配置文件(如.bashrc、.profile)中设置。
- 可以使用 umask 命令在命令行中临时设置 umask 值。
5. 示例和用法:
- 如果想要默认权限为rw-r–r–(即644),则umask值应为022。
- umask 022 命令可以临时设置 umask 值为 022。
- 可以使用 umask 命令查看当前的 umask 值。
6. umask值的计算方法:
- umask值是需要屏蔽掉的权限位,因此需要将需要设置的权限位转换为二进制数,并将其取反。
- 例如,如果想要默认权限为 rw-r–r–(即644),则需要将其转换为二进制数 110100100,再取反得到 001011011。
- 将 001011011 转换为八进制数,得到 umask 值为 023。
7. 示例:
- 如果想要默认权限为 rwxr-xr-x(即755),则需要将其转换为二进制数 111101101,再取反得到 000010010。
- 将 000010010 转换为八进制数,得到 umask 值为 022。
结论:
正确计算 umask 值非常重要,它决定了新创建文件和目录的默认权限。通过将需要设置的权限位转换为二进制数并取反,再将结果转换为八进制数,可以得到正确的 umask 值。
1299

被折叠的 条评论
为什么被折叠?



