1.基本权限UGO
1.属主(user)
2.属组(group)
3.其他人(other)
4.所有人(all=u+g+o)
2.权限类型三种类型:
读(read) :r=4,可对文件进行读取操作
写(write) :w=2,可对文件进行修改,写入
执行(excute) :x=1,使文件可以被执行
3.设置权限
chmod
使用符号:
语法:chmod 对象(u/g/o) 赋值符(+/-/=) 权限类型(r/w/x) 文件/目录
=是覆盖权限 、-是减去权限、 +是加上权限
使用数字
语法:chmod 数字 (000) 文件/目录
文件权限三个为一组,每一组的权限相加就是该组数字权限
r=4 、w=2、 x=1
chown
(change owner):修改属主与属组
语法:chown 用户名.组名 文件
chgrp
(change group):更改属组
语法:chgrp 组名 文件
4.基本权限ACL
区别
UGO 设置基本权限: 只能一个用户,一个组和其他
ACL 设置基本权限:可以给不同用户或组,不同权限
基本权限ACL(access control list):是UGO的补充
设置权限:setfacl -m 对象(ugo):对象名:权限(rwx) …文件对象
删除权限:
选项:
-m:添加权限
-x:删除用户或组的权限
-b:移除掉所有扩展出来的权限
-d:将文件的权限改为最开始默认的权限
查看权限
ACL扩展的权限用ls -l是看不到的所以要看到完整的权限需要使用getfacl
5.进程掩码 umask
新建文件、目录的默认权限会受到 umask 的影响,umask 表示要减掉的权限
shell (vim,touch)>> =umask>> 新文件或目录权限
vsftpd >>=umask> >新文件或目录权限
samba>> =umask> >新文件或目录权限
useradd >>=umask> >用户 HOME
文件的创建都要经过umask
普通文件原始默认权限为-rw-rw-rw-,权限值为666;
目录原始默认权限为drwxrwxrwx,权限值为777。
6.特殊权限
SUID: 运行某程序时,相应进程的属主是程序文件自身的属性,而不启动者(只要该程序有SUID权限,那么不管访问该程序的用户是属组还是other,都在访问的时候临时拥有属主的权限,用属主的身份进行访问)
SGID:运行某程序时,相应进程的属组是程序文件自身的属性,而不启动者所属的基本组(只要该程序有SGID权限,那么不管访问该程序的用户是属组还是other,都在访问的时候临时拥有属组的权限,用属组的权限进行访问)
Sticky:创建一个公共目录,在该公共目录下,每个人都可以创建删除自己的文件,但是不能删除别人的文件
语法:chmod u/g/o+s/s/t 文件
注意:添加权限是加的为小s 而权限位上为大S,表示权限位上没有执行权限x,如果有则是小s,(没有执行位为大S,有执行位为小s),t也一样
文件属性chattr
注意:设置文件属性(特别权限),针对所有用户,超管也会受到影响
用途:常用于锁定某个文件,拒绝修改