Linux umask 文件默认权限

umask是Linux系统中用于设定新建文件和目录默认权限的工具,它的值是一个八进制数,表示要从最大权限中减去的权限。例如,umask 022意味着文件默认权限为644,目录为755。umask的修改可以通过临时或永久方式,临时修改使用`umask 023`命令,永久修改则需要在用户配置文件如`/etc/profile`中设置。了解和正确设置umask对于控制文件系统的安全性至关重要。
摘要由CSDN通过智能技术生成

一、umask是什么

登录系统以后创建的一个文件会有一个默认权限。umask的作用就是设置用户创建文件或者目录的默认权限。umask设置的是权限的补码,我们常用的chmod设置的是文件权限码。一般在/etc/profile、home/.profile设置umask值

二、umask的作用

umask的作用是用来控制默认权限的。首先了解一下基本权限

2.1Linux文件权限

rwx
文件可以查看文件内容(可读)可以修改文件(可写)可以吧文件启动为一个运行的程序(可执行)
目录可以用ls查看目录中的文件名可以在目录中创建或者删除文件(需要w权限配合)可以使用cd进入目录,ls-l可以显示目录内文件的元数据的信息

2.2文件的最大权限

目录

目录的最大权限为777,创建目录后目录的默认权限就等于最大权限减umask 如:777-022=755;
高位八进制数表示所有者的权限,也就是文件创建者,中位八进制数表示所在组的权限,低位八进制表示其他用户的权限。

文件

文件的最大权限为666,创建文件后文件的默认权限就等于最大权限减umask 如:666-022=644;
如果对应位上为偶数:最终权限就是这个偶数值。
如果上面的对应为上有奇数,就对应位+1。
上面的这个方法计算是非常方便的, 为何得到奇数要+1呢。
文件的最大权限是666,都是偶数,你得到奇数,说明你的umask有奇数啊,读为4,写为2,都是偶数,说明你有执行权限的。
就按照上面的umask=023为例,在计算其他用户权限的时候6-3=3 ,6是读写,3是写和执行,其实应该是读写权限减去读权限的得到写权限的,相当于我们多减去了一个执行权限。所以结果加1。

三、umask的修改

umask的修改有两种:分为 临时修改 和永久修改
临时修改: 输入命令:umask 023
永久修改:
可以编辑以下文件 添加umask=022。

交互式登陆的配置生效:

/etc/profile < /etc/profile.d/.sh < ~/.bash_profile < ~/.bashrc </etc/bashrc 【/etc/bashrc的配置最有效 可以覆盖前面的配置】
非交互登陆的配置生效:
~/.bashrc < /etc/bashrc < /etc/profile.d/
.sh

四、常用umask

umask 002
umask 022

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值