【Linux进阶】文件和目录的默认权限与隐藏权限

1.文件默认权限:umask

        OK,那么现在我们知道如何建立或是改变一个目录或文件的属性了,不过,你知道当你建立一个新的文件或目录时,它的默认权限会是什么吗?

        呵呵,那就与umask这个玩意儿有关了,那么umask是在做什么?

        基本上,umask就是指定目前用户在建立文件或目录时候的权限默认值,那么如何得知或设置umask?它的指定条件以下面的方式来指定:

查看的方式有两种,

  • 一种可以直接输入umask,就可以看到数字类型的权限设置值,
  • 一种则是加入 -S(Symbolic)这个选项,就会以符号类型的方式来显示出权限了。

奇怪的是,怎么umask 会有四组数字?不是只有三组吗?

是没错,第一组是特殊权限用的,我们先不要理它,所以先看后面三组即可。

        在默认权限的属性上,目录与文件是不一样的,从我们知道X权限对于目录是非常重要的。但是一般文件的建立则不应该有执行的权限,因为一般文件通常是用于数据的记录,当然不需要执行的权限了。

因此,默认的情况如下:

  • 若用户建立为文件则默认没有可执行(x)权限,即只有rw 这两个项目,也就是最大为666,默认权限如下:
-rw-rw-rw-
  • 若用户建立为目录,则由于x与是否可以进入此目录有关,因此默认为所有权限均开放,即777,默认权限如下:
drwxrwxrwx

要注意的是,umask的数字指的是该默认值需要减掉的权限。

因为r、w、x分别是4(二进制:100)、2(二进制:010)、1(二进制:001),所以,当要拿掉能写的权限,就是输入2(二进制:010);

  1. 而如果要拿掉能读的权限,也就是4(二进制:100);
  2. 那么要拿掉读与写的权限,也就是6(二进制:110)
  3. 而要拿掉执行与写入的权限,也就是3(二进制:011)。

这样了解吗?请问你,5(二进制:101)是什么?呵呵,就是读与执行的权限。

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

  • 建立文件时:(-rw-rw-rw-)  -  (-----w--w-) =    -rw-r--r--
  • 建立目录时:(drwxrwxrwx)  -  (d----w--w-) = drwxr-xr-x

不相信吗?我们就来测试看看吧!


呵呵,看见了吧!确定新建文件的权限是没有错的。

1.1.umask 的利用与重要性:课题制作

        想象一个状况,如果你跟你的同学在同一台主机里面工作时,因为你们两个正在进行同一个课题,老师也帮你们两个的账号建立好了相同用户组的状态,并且将 /home/class/目录做为你们两个人的单题目录。

        想象一下,有没有可能你所制作的文件你的同学无法编辑?果真如此的话,那就伤脑筋了。这个问题经常发生。举上面的案例来看,你看一下 test1 的权限数值是什么?644,意思是如辈umask 制定为022,那新建的数据只有用户自己具有w的权限,同用户组的人只有,这个可读的权厚而已,并无法修改。这样要怎么共同制作课题,您说是吧!

        所以,当我们需要新建文件给同用户组的用户共同编辑时,那么 umask 的用户组就不能拿掉2以个w的权限。所以ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值