umask命令:设置文件的默认权限掩码

今天接触到了掩码,从博客上总结了一些关于掩码解释比较全面的分析,和大家分享下。

文件权限是linux系统中的一种安全机制,通过设置不同的权限,可以达到限制用户操作的目的,有效地保证了文件的完整性。
默认的情况下,创建一个文件的权限为”rw-r–r–”,而创建一个目录的权限为rwxr-xr-x”,如果默认的不符合用户的需求,可以用chmod命令进行设置,但这样的效率很低。

linux提供了一个方便的工具umask,可以用来设置文件的默认掩码。
文件的默认权限就是umask设置的掩码和系统中默认的最大权限码做异或运算,其结果就是文件的默认权限。

对于文件来说,这一数字的最 大值分别是6。系统不允许你在创建一个文本文件时就赋予它执行权限,必须在创建后用chmod命令增加这一权限。
目录则允许设置执行权限,这样针对目录来说,umask中各个数字最大可以到7。
Linux约定:
新建文件的权属是-rw-rw-rw-,权限值是666
新建目录的权属是drwxrwxrwx,权限值是777

语法:

umask [选项] [权限掩码]

-S 以字符的方式来表示权限掩码

例:
一、设置文件的权限掩码,使文件自动生成默认权限为rw-rw—-
rw-rw—-对应的数字就是660, 其实每一位用三位2进制来表示,所以3位二进制组成十进制数就得出660,由于要生成的文件默认权限改变,其权限掩码值为:666-660=006

linux@server:~$ umask 006

linux@server:~$ touch abc

linux@server:~$ ll abc

-rw-rw—- 1 linux linux 0 2010-12-11 21:44 abc

umask 777 #创建文件会没有任何权限,他和chmod是相反的。
umask 000 #具有所有权限。但文件没有x权限。

注意:
我们只要记住umask是从权限中“拿走”相应的位即可。
对于文件的执行权限(即X权限)使用umask命令是无法使其起作用的,系统强制关闭文件的X默认执行权限,只能通过chmod修改

umask只对当前shell环境起作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值