Linux特殊权限之umask,SBIT,SUID,SGID及ACL权限列表

1.用户权限:

基本上, umask 就是指定 “目前使用者在创建文件或目录时候的权限默认值
umask 的分数指的是“该默认值需要减掉的权限!

一般文件的创建则不应该有执行的权限,因为一般文件通常是用在于数据的记录 嘛!当然不需要执行的权限了。 因此,默认的情况如下:
若使用者创建为“文件”则默认“没有可执行( x )权限”,亦即只有 rw 这两个项目,也就
是最大为 666 分,默认权限如下: -rw-rw-rw-
若使用者创建为“目录”,则由于 x 与是否可以进入此目录有关,因此默认为所有权限均开
放,亦即为 777 分,默认权限如下: drwxrwxrwx

umask 系统建立文件是默认保留的权力

[root@study	~]#	umask
0022				<==与一般权限有关的是后面三个数字!第一组是特殊权限用的
[root@study	~]#	umask	-S
u=rwx,g=rx,o=rx

umask 077 ##临时设定系统予留权限为077

如下例:文件权限为666,减去umask=077,剩余权限为600
在这里插入图片描述
不过在这个过程中需要注意:

例题:假设你的	umask	为	003	,请问该	umask	情况下,创建的文件与目录权限为?答:
umask为003	,所以拿掉的权限为	--------wx,因此:	文件:	(-rw-rw-rw-)	-	(--------wx)
=	-rw-rw-r--	目录:	(drwxrwxrwx)	-	(d-------wx)	=	drwxrwxr--

但是,有的喜欢使用文件默认属性	666	与目录默认属性	777来与	umask	进行相减的计算~这是不好的喔!以上面例题来看,	如果使用默认属性相加减,
则文件变成:666-003=663,亦即是	-rw-rw--wx	,这可是完全不对的喔!	想想看,原本文件
就已经去除	x	的默认属性了

在默认的情况中, root 的 umask 会拿掉比较多的属性,root 的 umask 默认是 022 , 这是基
于安全的考虑啦~至于一般身份使用者,通常他们的 umask 为 002 ,亦即保留同群组的写入
权力! 其实,关于默认 umask 的设置可以参考 /etc/bashrc 这个文件的内容
在这里插入图片描述

永久更改umask

(1)vim  /etc/profile      ##系统配置文件
59   if [$UID -gt 199] &&["id -gn "'id -un'“];then
60          umask  002       ##普通用户的umask
61 else
62	    umask  077       ##超级用户的umask
63  fi

在这里插入图片描述

(2)vim /etc/bashrc      ##shell配置文件
70     if [$UID -gt 199]&&["id -gn "'id -un'“] ;then
71      umask  002     ##普通用户的umak
72     else
73       umsk  077
74     fi

在这里插入图片描述
source /etc/profile ##更改立即生效
source /etc/bshrc
在这里插入图片描述
超级用户:
默认建立文件权限644;
目录权限755

umask 可以查看umask值
777-umask 就是目录的权限,再减去111就是文件的权限
exit之后再次进入shell,umask会恢复原值,因为不是同一个进程,对另一个进程是不起作用的

要是想永久修改,改vim /etc/profile 环境的 /umask找关键字 里面的gt表示大于 修改第二个是超级用户的
vim /etc/bashrc 是修改shell的 /umusk找关键字
改完之后,在当前用户不生效,再新打开的shell才会修改umask,如果想在当前用户也修改,则需要source /etc/profile
source /etc/bashrc 再用umask查看就修改成新的值了

2.特殊权限

(1)sticky #粘制位

作用:只针对目录生效,当上一个目录有sticky权限时
在这个目录中的文件只能被文件的所有者删除

SBIT 对于目录的作用是: 当使用者对于此目录具有 w, x 权限,亦即具有写入的权限时;
当使用者在该目录下创建文件或目录时,仅有自己与 root 才有权力删除该文件

换句话说:当甲这个使用者于 A 目录是具有群组或其他人的身份,并且拥有该目录 w 的权
限, 这表示“甲使用者对该目录内任何人创建的目录或文件均可进行 “删除/更名/搬移” 等动
作。” 不过,如果将 A 目录加上了 SBIT 的权限项目时, 则甲只能够针对自己创建的文件或目
录进行删除/更名/移动等动作,而无法删除他人的文件。

举例来说,我们的 /tmp 本身的权限是“drwxrwxrwt”, 在这样的权限内容下,任何人都可以在
/tmp 内新增、修改文件,但仅有该文件/目录创建者与 root 能够删除自己的目录或文件。这个
特性也是挺重要的啊!你可以这样做个简单的测试:

  1. 以 root 登陆系统,并且进入 /tmp 当中;
  2. touch test,并且更改 test 权限成为 777 ;
  3. 以一般使用者登陆,并进入 /tmp;
  4. 尝试删除 test 这个文件!

设定方式:<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值