权限管理
1.基本权限
1.1 权限类型
r(read):读
w(write):写
x(execute):执行
1.2 用户权限管理
1.2.1用户身份划分
U(user):所属者
g(group):所属组
o(other):其他人
1.2.2 用户权限划分(-rwxr-xr–)
第一个(-):指的是文件类型
rwx:这三位指的是u所属者的 权限
r-x:这三位指的是g所属组的权限
r–:这三位指的是其他人的权限
1.2.3权限管理命令
- chmod:修改权限
基本语法:chmod 参数 模式 文件
赋值表示法:u= ;g= ;0=
授权表示法:u+,u-;g+,g-;o+,o-
rwx权限也可用数字表示,分别为:4,2,1。比如:755就表示所属者拥有rwx权限;所属组拥有rx权限;其他人拥有rx权限。
参数:-R 递归修改 - chown:修改文件所有者
chown newowner 文件/目录 :改变所有者
chown newowmer:newgroup 文件/目录 :改变所有者和所在组
参数:-R 递归改变 - chgrp:修改文件所在组
chgrp newgroup 文件/目录 :修改所在组
参数:-R 递归生效
1.2.4权限说明
- 对于目录
r:可以使用ls命令获取其下的所有文件
w:可修改其下的文件,即删除或创建文件
x:可cd至此目录,且可以查看所有文件的详细属性信息 - 对于文件
r:可读取文件数据
w:可修改文件数据
x:可以将此文件运行为进程
2.文件的特殊权限
2.1 SUID
Set UID :对二进制程序进行设置的特殊权限。
目的:让本来没有相应权限的用户运行这个程序时,可以访问他没有权限访问的资源。
chmod u+s files
2.2 SGID
Set GID :针对二进制程序和目录设置
作用;可以让目录下的文件继承目录所属组的权限。
chmod g+s 目录
2.3 SBIT
Sticky Bit :只作用于目录
作用:目录下的文件只允许root用户、文件创作者、目录所有者才能删除,其他用户不能删除。
chmod o+t files
3. 隐藏权限
lsattr命令:查看文件的隐藏权限
chatter命令:设置文件的隐藏权限
语法:chatter 参数 文件
-i :无法对文件修改
-a :仅允许补充追加内容,无法覆盖/删除内容
-s :彻底从硬盘删除,不可恢复
-b :不可修改文件或目录的存取时间
-u :当删除文件后依然保留硬盘中的数据
4.ACL
4.1区别
可以针对用户来设置权限
可以针对用户组来设置权限
子文件/目录继承父目录的权限
4.2setfacl命令;用于管理文件的ACL权限规则
语法:setfacl [选项] acl参数 文件/目录 (acl参数比如; u:用户名:权限)
常用选项
- -m :修改权限
- -x :修改某个权限
- -b :删除全部权限
- -R :递归子目录
- -M :从文件中读取权限
- -k :移除默认的ACL权限
getfacl命令:查看文件的ACL权限