天天看点

linux下的权限掩码,linux查看用户的umask命令权限掩码022特殊权限

umask命令用来设置限制新建文件权限的掩码。当新文件被创建时,其最初的权限由文件创建掩码决定。用户每次注册进入系统时,umask命令都被执行, 并自动设置掩码mode来限制新文件的权限。

语法

umask(选项)(参数)

选项

-p:输出的权限掩码可直接作为指令来执行;

-S:以符号方式输出权限掩码。

作用;

控制新建的文件或目录的权限

系统用户:#umask 022

普通用户:#umask 002

umask值与新建文件、目录权限对照表

umask值

目录权限值

文件权限值

7

6

1

6

6

2

5

4

3

4

4

4

3

2

5

2

2

6

1

7

例:

设置系统的权限掩码为444[[email protected] ~]#umask 444

以符号的格式设置umask:用户所有者读取、组群所有者写入、其他用户读取[[email protected] ~]#umask  u=r,g=w,o=r

查看系统当前的umask设置[[email protected] ~]#umask

0353以符号的格式显示当前的umask设置

[[email protected] ~]#umask -S

u=r,g=w,o=r

计算方法:

文件默认权限=666-umask值 666-022=644

目录默认权限=777-umask 值 777-022=755

#这是一个好的记忆方法,但不严谨。

/etc/bashrc

if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then # id -gn显示组名,id -un 显示用户名

umask 002 #普通用户

else

umask 022 #系统用户

fi

特殊权限:

SUID    SGID    Stickybit

s对应的数值为:u 4,g 2,t 1

SUID:

限定:只能设置在二进制可执行程序上面。对目录文本设置无效。

功能:程序运行时的权限从执行者变更成程序所有者。

[[email protected] ~]# ll /usr/bin/passwd

-rwsr-xr-x. 1 root root 30768 Feb 17 2012 /usr/bin/passwd

[[email protected] ~]# useradd canxue

[[email protected] ~]# su - canxue

[[email protected] ~]$ less /etc/shadow

/etc/shadow: 权限不够

解决方法

[[email protected] ~]# ll /usr/bin/less

-rwxr-xr-x 1 root root 154416 Sep 26 2011 /usr/bin/less

[[email protected] ~]# chmod u+s /usr/bin/less

[[email protected] ~]# ll /usr/bin/less

-rwsr-xr-x 1 root root 154416 Sep 26 2011 /usr/bin/less

验证

[[email protected] ~]$ less /etc/shadow 成功读取

注意:

[[email protected] ~]# chmod 4755 /usr/bin/less 等同于

[[email protected] ~]# chmod u+s /usr/bin/less

SGID:

限定:既可以给二进制可执行程序设置,也可以给目录设置。

功能:在设置了SGID权限的目录下建立文件时,新创建的文件的所属组会继承上级目录的所属组

[[email protected] ~]# mkdir sws

[[email protected] ~]# chmod g+s sws/

[[email protected] ~]# cd sws/

[[email protected] sws]# touch chuanshuo

[[email protected] sws]# ll chuanshuo

-rw-r--r-- 1 root canxue 0 Oct 13 22:05 chuanshuo

[[email protected] ~]# chmod 2755 sws/

[[email protected] ~]# ll -d sws/

drwxr-sr-x 2 canxue canxue 4096 Oct 13 22:05 sws/

Stickybit

限定:只作用于目录

功能:目录下创建的文件只有root、文件创建者、目录所有者才能删除

[[email protected] ~]# chmod o+t /tmp/

[[email protected] ~]# ll -d /tmp/

drwxrwxrwt. 14 root root 4096 Oct 13 21:44 /tmp/

[[email protected] tmp]$ touch canxue.txt

[[email protected] tmp]$ chmod 777 canxue.txt

[[email protected] tmp]$ rm -rf canxue.txt

rm: 无法删除"canxue.txt": 不允许的操作