当前位置:首页>Linux>1.13 Linux权限管理

1.13 Linux权限管理

  • 2026-10-11 08:32:57
1.13 Linux权限管理

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   -
     输入自己密码

最新文章

随机文章