Linux中的文件默认权限:umask

新建一个新的文件或目录时,它的默认权限是什么?就与umask有关了,基本上umask就是指定“目前用户新建文件或目录时默认的权限默认值”,那么如何得知或设置umask呢?它的指定条件以下列的方式来指定:

[root@www ~]#umask
0022       <==与一般权限有关的是后面三位数
[root@www ~]#umask -S
u=rwx,g=rx,o=rx

查看的方式有两种,一种可以直接输入umask,就可以看到数字形态的权限设置分数,一种则是加入-S这个参数,就会以符号类型的方式来显示出权限了,奇怪的是,怎么umask会有四组数?不应该只有三组吗?是没错,第一组是特殊权限用的,我们先不理他,直接看后面三组即可。

在默认权限属性上目录与文件是不一样的,我们知道x权限对与目录是非常重要的,但是一般文件创建时则不应该有执行的权限,因为一般文件通常是用于数据的记录。当然不需要执行,因此在默认情况如下:

若用户创建文件则默认没有可执行x权限,既只有r,w这两个选项,也就是最大为666,默认权限为:

-rw-rw-rw-

若用户新建目录时,则由于x与是否可进入此目录有关,因此默认为所有权限均开放,既777分,默认权限如下:

drwxrwxrwx

要注意的是,umask的分数指的是该默认值需要减掉的权限,因为r、w、x分别是4,2,1也就是说,当拿掉能写的权限,就是输入2,而如果要拿掉能读的权限,就是输入4,要拿掉读与写的权限就是6,而要拿掉执行与写入的权限就是3。什么是5?    5就是读与执行的权限。

如果以上面的例子来说明的话,因为umask为022,所以user并没有被拿掉任何权限。不过group、others的权限被拿掉了2,(也就是说w这个权限),那么当用户:

新建文件时:(-rw-rw-rw-)-(-----w--w-)==-rw-r--r--

新建目录时:(drwxrwxrwx)-(d----w--w-)==drwx-r-xr-x

umask的利用与重要性:

如果设定umask为022的话,那么新建的数据只有用户自己具有w权限,同用户组的人只有r这个可读的权限而已,并无法修改。这样怎么共同制作专题?你说是吧。

所以,当我们需要创建文件给同组的用户共同编辑专题时,那么umask的用户组就不能拿掉2这个w权限。umask就得要是002之类的才可以,这样新建文件才能够使-rw-rw-r--

的权限模样,那么如何设置umask呢?直接在umask后面输入002就可以了。

[root@www ~]#umask 002
[root@www ~]#touch test1
[root@www ~]#mkdir test2
[root@www ~]#ll
-rw-rw-r-- 1 root root        0     Sep  27  00:36  test1
drwxrwxr-x 2 root root        4096  Sep  27  00:36  test2
所以说,这个umask对与新建文件与目录的默认权限是很有关系的,这个概念可以用在任何服务器上,尤其是你在未来假设文件服务器上。

值得注意的是:

假设你的umask为003,那么这种情况下新建的文件和目录的权限都是什么?

如果使用默认值相减的话,则文件变成666-003=663,即是-rw-rw-wx,这可是完全不对的,想想看原本文件就拿掉了x的默认属性,怎么可能后来又冒出来x的默认属性,正确的做法应该是:

文件:(-rw-rw-rw-)-(---------wx)=-rw-rw-r--

目录:(drwxrwxrwx)-(---------wx)=drwxrwxr--

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值