??同时设置属主和属组
[root@shawn song]# ll /home/song/a.txt
---------- 1 root root 12 10月 29 17:22 /home/song/a.txt
[root@shawn song]# chown song.song !$
chown song.song /home/song/a.txt
[root@shawn song]# ll !$
ll /home/song/a.txt
---------- 1 song song 12 10月 29 17:22 /home/song/a.txt
??只设置属主
[root@shawn song]# chown root !$
chown root /home/song/a.txt
[root@shawn song]# ll !$
ll /home/song/a.txt
---------- 1 root song 12 10月 29 17:22 /home/song/a.txt
??只设置属组
[root@shawn song]# chown .root !$
chown .root /home/song/a.txt
[root@shawn song]# ll !$
ll /home/song/a.txt
---------- 1 root root 12 10月 29 17:22 /home/song/a.txt
??单独加减一个权限和多个一起加减都可以
[root@shawn song]# ll
总用量 4
---------- 1 root root 12 10月 29 17:22 a.txt
??写在一起加一些权限(也可以单独拎一个"u+xw")
[root@shawn song]# chmod u+rw,g+rx,o+wx a.txt
[root@shawn song]# ll a.txt
-rw-r-x-wx 1 root root 12 10月 29 17:22 a.txt
??写在一起减一些权限
[root@shawn song]# chmod u-w,g-wx,o-x a.txt
[root@shawn song]# ll a.txt
-r--r---w- 1 root root 12 10月 29 17:22 a.txt
??"a"代表所有权限一起设置
[root@shawn song]# ll
总用量 4
-r--r---w- 1 root root 12 10月 29 17:22 a.txt
[root@shawn song]# chmod a=rwx a.txt
[root@shawn song]# ll a.txt
-rwxrwxrwx 1 root root 12 10月 29 17:22 a.txt
??逐个赋值
[root@shawn song]# chmod u=x,g=x a.txt
[root@shawn song]# ll a.txt
---x--xrwx 1 root root 12 10月 29 17:22 a.txt
??或者多个一起赋值
[root@shawn song]# chmod uo=r,g=w a.txt
[root@shawn song]# ll a.txt
-r---w-r-- 1 root root 12 10月 29 17:22 a.txt
??"u"=4, "g"=2, "0"=1
[root@shawn song]# ll a.txt
-r---w-r-- 1 root root 12 10月 29 17:22 a.txt
??"777"开放所有权限
[root@shawn song]# chmod 777 a.txt
[root@shawn song]# ll a.txt
-rwxrwxrwx 1 root root 12 10月 29 17:22 a.txt
??"000"不开放权限
[root@shawn song]# chmod 000 a.txt
[root@shawn song]# ll a.txt
---------- 1 root root 12 10月 29 17:22 a.txt
??可以按需求设置
[root@shawn song]# chmod 421 a.txt
[root@shawn song]# ll a.txt
-r---w---x 1 root root 12 10月 29 17:22 a.txt
??设置有"s"权限的命令
??普通用户使用时会临时变成该命令的属主
??也就是获得该命令的属主权限
在 Linux 中,用户密码都在"/etc/shadow"中,我们可以看到它对于其他人是没有权限的
然而普通用户却可以使用"passwd"修改密码,我们来看看这个命令
?我们发现它在属主权限里多了个"s"权限,这就是所谓的"尚方宝剑"
?当普通用户使用带有这种权限的命令时
?普通用户会暂时获得这个命令属主的所有权限
?也就是成为了这个命令的主人(一般是root,root不受权限压制)
让我们为 "cat" 命令加上 "s" 权限看看会发生什么
和SUID类似,在执行该文件时,用户将获得该文件所属组的权限
当一个用户在一个具有 "s" 权限的初始目录下创建子目录以及子子目录时
这些所有的子目录与子子目录所在的属组都将是初始目录所在的属组
目前只对目录有效果
用来阻止非文件的所有者删除具有"SBIT"权限文件夹下的文件
比如"tmp"目录就是这种目录
权限信息中最后一位t表明该目录被设置了SBIT 权限
SBIT 对目录的作用是:当用户在该目录下创建新文件或目录时
仅有自己和root才有权力删除,主要作用于一个共享的文件夹
??文件权限计算方法: 偶数位直接相减,奇数位相减后加1
文件起始权限 | umask值 | 运算 | 计算后的文件权限 |
---|---|---|---|
666 | 002 | 相减 | 644 |
666 | 033 | 相减后奇数为加1 | 644 |
666 | 325 | 相减后奇数为加1 | 442 |
??目录权限计算方法: 直接相减
目录起始权限 | umask值 | 运算 | 目录计算后权限 |
---|---|---|---|
777 | 022 | 相减 | 755 |
777 | 033 | 相减 | 744 |
777 | 325 | 相减 | 452 |
??UID > 199 的系统用户或者普通用户
默认 "umask": 0002
文件权限:664
目录权限:775
??ROOT用户
默认 "umask": 0022
文件权限:644
目录权限:755
须知 umask 越小, 权限就越大
# umask 000
# vim /etc/profile
?或者
# vim /etc/bashrc
?内容是一致的
原文:https://www.cnblogs.com/songhaixing/p/13900030.html