umask命令学习体会

 
 

umask因为需要一个相逆过程和文件的x位设置问题,经常会混,发以此文加强记忆

umask

功能说明:指定在建立文件时预设的权限掩码。
语  法:umask [-S][权限掩码]
补充说明:umask可用来设定[权限掩码]。[权限掩码]是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限。
参  数:
-S  以文字的方式来表示权限掩码。

文件:用八进制基数666,即无x位(可执行位)rw- rw- rw-.执行位需由用户自行加入。

例一:设要生成的文件以rw- r-- r--这样的权限字出现,即真实权限用八进制表示为644,则被666基数减得022,022即掩码。使用umask 022。

注:033效果与022一样,假设使用033掩码进行设置,则真实权限应为633即rw- r-x r-x ,但前提规定文件不生成x位,所以文件的权限最终将以rw-r--r--出现。

目录:用八进制基数777

例二:设要生成的目录权限以rwxr-xr-x这样的权限字出现,即真实权限用八进制表示为755,则被基数为777的权限字相减后,得掩码022。则使用umask 022进行设置。

总结:

掌握二个要点,一、文件基数为666,目录为777,即文件无设x位,目录可设x位。二、chmod是设哪个位,哪么哪个位就有权限,而umask是设哪个位,则哪个位上就没权限。

 
### umask 命令的用法与含义 在 Linux 系统中,`umask` 命令用于设置文件和目录创建时的默认权限掩码。权限掩码是一个八进制数,用来屏蔽掉文件或目录创建时的默认权限。通过 `umask` 的值,系统可以确定新创建文件或目录的实际权限。 #### 默认权限计算规则 - 文件的默认权限为 `666`(即 `-rw-rw-rw-`),表示所有用户都具有读写权限。 - 目录的默认权限为 `777`(即 `drwxrwxrwx`),表示所有用户都具有读、写和执行权限。 - 实际分配的权限是通过将默认权限与 `umask` 值进行按位取反后相减得到的[^3]。 #### umask 值的作用 `umask` 的值决定了哪些权限被屏蔽。例如: - 如果 `umask` 值为 `022`,则文件的实际权限为 `666 - 022 = 644`(即 `-rw-r--r--`)。 - 如果 `umask` 值为 `027`,则目录的实际权限为 `777 - 027 = 750`(即 `drwxr-x---`)。 #### 查看当前的 umask 值 可以通过以下命令查看当前的 `umask` 值: ```bash umask ``` #### 设置新的 umask 值 可以通过以下命令临时设置 `umask` 值: ```bash umask 新值 ``` 例如,将 `umask` 值设置为 `022`: ```bash umask 022 ``` 如果希望永久更改 `umask` 值,可以将其添加到用户的 shell 配置文件中(如 `.bashrc` 或 `.profile`): ```bash echo "umask 022" >> ~/.bashrc source ~/.bashrc ``` #### 示例 假设需要创建一个文件并观察其权限: 1. 设置 `umask` 值为 `022`: ```bash umask 022 ``` 2. 创建一个新文件: ```bash touch testfile ``` 3. 查看文件权限: ```bash ls -l testfile ``` 输出可能类似于以下内容: ``` -rw-r--r-- 1 user group 0 Oct 10 12:00 testfile ``` #### 注意事项 - `umask` 值仅影响新创建的文件或目录,不会改变已存在的文件或目录的权限。 - 不同的系统或环境中,`umask` 的默认值可能不同。通常情况下,默认值为 `022` 或 `002`[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值