Skip to content

权限管理

用户权限

  • root 用户(超级管理员)
  • 拥有最大权限
  • 普通用户一般只在 home 目录内不受限,在大多位置都没修改权限

  • su [-][用户名],用户切换

  • -表示切换用户后加载环境变量
  • 用户名默认为 root
  • 切换到 root 需要输入密码

  • exit 回退到上一个用户

  • 快捷键 ctrl+d

  • sudo 其它命令

  • 为一条命令赋予 root 权限
  • 只有被 sudo 认真的用户才能使用 sudo 命令

    • root 用户输入 visudo 打开/etc/sudoers
    • 在文件最后添加 username(用户名) ALL=(ALL) NOPASSWD: ALL
  • passed 修改密码

  • 用户与用户组

  • 可以配置多个用户、用户组
  • 一个用户可以加入多个用户组
  • linux 中的权限管控可以是针对用户的也可以是针对用户组的
  • 用户组管理:只有 root 用户才能执行
    • groupadd 用户组名,创建用户组
    • groupdel 用户组名,删除用户组
  • 用户管理
    • useradd [-g -d] 用户名
    • -g 指定用户的组,指定的组必须是已经存在的组,不指定会创建同名组并自动加入
      • 如-g its
    • -d 指定用户的 home 路径,默认为/home/用户名
      • 如-d /home/test
    • userdel [-r] 用户名
    • -r 同时删除对应的 home 目录
    • id [用户名],查看用户所属的组,默认查看子集
    • usermod -aG 用户组用户名,将指定用户加入指定
  • getent passwd 显示操作系统中的全部用户
    • thdlrt: x:1000:1000:thdlrt:/home/thdlrt:/bin/bash
    • 用户名:密码:id:组 id:描述信息:home 目录:执行终端(默认 bash)
  • getent group 查看组的信息
    • test: x:1001:thdlrt
    • 组名:组认证:id

文件权限

  • image-20230316191457164
  • image-20230316191824148
  • 首位表示文件类型。后面每三位表示一种用户的权限

    • r:读权限(查看文件内容;ls 文件夹内容
    • w:写权限(修改文件;在文件夹内删除修改创建
    • x:执行权限(将文件作为程序执行;cd 进入文件夹,作为工作目录
  • chmod 权限控制(只有文件的所属用户以及 root 用户才可以进修改)

  • chmod [-R] 权限 文件、文件夹
    • -R 表示对文件夹内全部内容进行同样的操作
    • chmod u=rwx,g=rx,o=x hello.txt 分别对三种用户的权限进行修改(只写修改的即可, 并且省略-)
  • image-20230316193937027

    • 用一位数字表示一种用户的权限状态,三个数字表示全部三种用户的权限
    • chmod 751 gello.txt
  • chown 修改文件拥有者/用户组

  • chown -R [用户][:][用户组] 文件/文件夹
    • -R 对文件内全部文件执行相同的操作
    • 可选修改用户以及用户组(用: 分隔)
  • image-20230316194413686
  • 只有 root 用户有权限执行这个命令