权限管理
用户权限¶
- 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
文件权限¶
-
首位表示文件类型。后面每三位表示一种用户的权限
- r:读权限(查看文件内容;ls 文件夹内容)
- w:写权限(修改文件;在文件夹内删除修改创建)
- x:执行权限(将文件作为程序执行;cd 进入文件夹,作为工作目录)
-
chmod 权限控制(只有文件的所属用户以及 root 用户才可以进修改)
chmod [-R] 权限 文件、文件夹
- -R 表示对文件夹内全部内容进行同样的操作
chmod u=rwx,g=rx,o=x hello.txt
分别对三种用户的权限进行修改(只写修改的即可, 并且省略-)
-
- 用一位数字表示一种用户的权限状态,三个数字表示全部三种用户的权限
- 如
chmod 751 gello.txt
-
chown 修改文件拥有者/用户组
chown -R [用户][:][用户组] 文件/文件夹
- -R 对文件内全部文件执行相同的操作
- 可选修改用户以及用户组(用: 分隔)
- 只有 root 用户有权限执行这个命令