1、权限管理

2、chmod -R 数字 目录 #递归改目录及目录下所有子文件子目录权限
3、chown -R 所有者:所属组 #递归改目录及目录下所有子文件子目录所有者、所属组
4、文件隐藏属性
1)、lsattr [选项] 文件或目录
lsattr -a 文件或目录 #显示所有、包括隐藏属性
lsattr -d 目录 #若目标为目录,仅列出目录属性
2)、chattr [+-=][选项] 文件或目录 #修改隐藏权限
i 文件:只能看,不能删除、改名、修改、添加
目录:只能改目录下文件的数据,不能创建、删除、改名
a 文件:只能增加,不能删除、修改(用于日志)
只能echo添加,不能vim添加
目录:只能创建、修改(echo覆盖),不能修改
e ext文件系统默认有
5、文件特殊权限 SUID、SGID、SBIT
RUID RGID EUID EGID
实际用户识别号 实际组识别号 有效用户识别号 有效组识别号
1) SUID:所有者的x权限被占用
#若具有x的文件设置SUID,则用户执行将以文件所有者身份执行
特点:只有二进制可执行文件才能设置suid权限 二
执行过程中生效 中
执行者有x权限 x
执行过程中,切换为文件的属主身份 主
EUID:由1000——》0
S 小写:原本有可执行权限
大写:原本没有可执行权限
chmod u+s 命令路径 #添加SUID权限
chmod u-s 命令路径 #删除SUID权限
练习:其他用户能执行useradd命令
2) SGID:执行过程中,会切换为可执行文件的所属组
* 给目录设置SGID,目录下新建的所属组为上级所属组
chmod g+s 目录 #添加SGID
chmod g-s 目录 #删除SGID
特点: 针对文件
只有二进制可执行文件才能设置sgid权限 二
执行过程中生效 中
执行者有x权限 x
执行过程中,切换为文件的属组身份 组
针对目录
普通用户有rx权限才能进 rx
普通用户有w权限时,新建文件属组为此目录属组 w
普通用户在目录中的有效组为成为目录的所属组 组
3)SBIT权限 #限制所属组成员和其他人权限
# 给目录设置,设置后只有文件所有者,目录所有者,root用户拥有权限
谁创建,谁能删,root和目录所有这除外
chmod o+t 目录 #添加SBIT权限
chmod o-t 目录 #删除SBIT权限
练习:构建一个教室作业上传环境
421 421 421
rwx rwx rwx
U G O
SUID SGID SBIT
s s t
4 2 1
## 数字权限 _ _ _ _
sst 所有者 所属组 其他人
6、ACL权限(access contrl list)访问控制列表 #权限有+
## 当U、G、O权限不能满足环境时,设置ACL权限
getfacl 目录或文件 #查看目录或文件所有权限
setfacl [选项] u:用户:权限 文件或目录 #设置
setfacl [选项] g:组:权限 文件或目录
选项 -b #删除所有人、所有组条目
-m #添加ACL权限
-x #删除指定人、指定组条目
-R #递归创建目录下ACL权限,对已有目录子文件子目录生效,再次创建的不生效
-d #设置默认ACL权限,对目录生效
对子目录子文件继承父目录ACL权限
eg: setfacl -m u:user1:rwx test.d
setfacl -x u:user1 test.d
setfacl -b test.d
setfacl -R -m u:user1:rwx aaa
setfacl -d -m u:user1:rwx aaa
mask设置:最后设置 #若setfacl -m 给的权限比mask默认大。则mask失效
查主机名:
cat /etc/hostname
修改主机名(永久生效):
hostnamectl set-hostname 主机名
执行命令权限sudo
在/etc/sudoers
用户账号 登录的主机名=(可切换主机名) 可执行命令
root ALL=(ALL) ALL
给用户添加useradd、passwd可执行命令
user1 ALL=(ALL) /usr/sbin/useradd,/usr/bin/passwd,!/usr/bin/passwd root,!/usr/bin/passwd “”
user1用户可执行sudo useradd 用户名 , sudo passwd 用户名
练习:hf01不知道root密码切换root终端
su -
/etc/sudoers 中添加
hf01 ALL=(root) /bin/su –
hf01用户执行 sudo su -
输入自己密码