Linux用户和组之——权限


LINUX.jpg

用户和组权限

权限名称 字母 数字
r 4
w 2
执行 x 1

权限是真对用户和组设置的,主要分为3类

分类 字符表示
所有者(属主,user) u
所属组(group) g
其他(other) o
所有人(all) a

ls.png

文件权限每3个字符组成一组,分别代表属主权限(u)、所属组权限(g)、其他权限(o),如果没有对应权限,用“-”表示。

文件的权限可以使用ls -lll命令来查看

[root@centos7 ~]#ls -ld aaa 
drwxr-xr-x. 2 root root    6 Aug 15 21:39 aaa

将用户添加到组中使用groupmems

[root@centos7 ~]#groupmems -g test -a testuser
[root@centos7 ~]#groupmems -g test -l
testuser

改变文件所有者chown
只有root才能更改所有者,普通用户可以对自己所在的组进行更改

[root@centos7 data]#ls -ld test 
-rw-r--r--. 1 root root 0 Aug 17 05:08 test
[root@centos7 data]#chown testuser test 
[root@centos7 data]#ls -ld test         
-rw-r--r--. 1 testuser root 0 Aug 17 05:08 test
##更改的属主需要提前创建

更改文件权限chmod
用法一:模式法

[root@centos7 data]#ls -ld test 
-rw-r--r--. 1 testuser root 0 Aug 17 05:08 test

给属主添加执行权限,如下
[root@centos7 data]#chmod u+x test
[root@centos7 data]#ls -ld test 
-rwxr--r--. 1 testuser root 0 Aug 17 05:08 test

删除所有主和其他用户的读权限
[root@centos7 data]#chmod go-r test 
[root@centos7 data]#ls -ld test     
-rwx------. 1 testuser root 0 Aug 17 05:08 test

所有用户添加读权限
[root@centos7 data]#chmod a+r test 
也可以写成    “[root@centos7 data]#chmod +r test” 
[root@centos7 data]#ls -ld test 
-rwxr--r--. 1 testuser root 0 Aug 17 05:08 test

删除属主的x权限
[root@centos7 data]#chmod u-x test
或者 “[root@centos7 data]#chmod u=rw test”
[root@centos7 data]#ls -ld test 
-rw-r--r--. 1 testuser root 0 Aug 17 05:08 test

用法二:数字法
二进制表示法,有为1,无为0

rwx
111
所以权限最大为777

[root@centos7 data]#chmod 640 test
[root@centos7 data]#ls -ld test   
-rw-r-----. 1 testuser root 0 Aug 17 05:08 test

rwx对于文件的和目录的作用

文件:
    r:可使用文件查看类工具获取其内容
    w:可以修改文件
    x:可以把此文件提请内核启动为一个进程
目录:
    r:可以使用ls命令查看此目录中文件列表
    w:可在此目录中创建文件,删除文件
    x:可以使用ls -l查看此目录中文件属性,可以cd进入此目录

新建文件默认权限
新建文件的默认权限取决于umask

 目录的默认权限=777-umask
  文件的默认权限=666-umask,对应权限位如果为奇数,+1

文件系统的特殊权限

SUID:占用属主执行权限位,表现为s,数字表示为4
其他用户如果执行该文件,将以属主的权限执行该文件
添加SUID权限,原文件需要有执行权限,否则没有作用,表现为S

SGID:
占用所属组执行权限位,数字表示为2
用户执行该文件,继承其所属组的权限

sticky:
占用其他用户执行权限位,表现为t,数字表示为1
其他用户可以创建文件,删除只能删除自己的文件

chattr

chattr +i 
可以限制所有用户更改该文件

chattr +a
可以追加新内容到该文件,但不能删除该文件

chattr +A
不更新读时间

你可能感兴趣的:(Linux用户和组之——权限)