su 切换用户角色
- 从A用户切换到B
su - da
#为什么加-
? 加-
代表携带所有环境变量,不加可能只携带部分环境变量
查看用户环境变量env|grep root
[root@l /]# env|grep root
PYENV_ROOT=/root/.pyenv
OLDPWD=/root
USER=root
MAIL=/var/spool/mail/root
PATH=/root/.pyenv/shims:/root/.pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
HOME=/root
LOGNAME=root
-
-c
以da用户身份执行命令,在返回当下用户
[root@l /]# su -da -c pwd
-c 使用root执行,普通用户必须知道root密码,不好管理有风险(更规范的方法使用sudo) -
su 弊端
切换到root用户
拥有所有权限
sudo
- 作用:不切换到root,在操作命令同时,拥有root权限,一旦操作完成,权限就消失,而且不需要root密码
ll /etc/sudoers
-r–r----- 1 root root 4328 Sep 30 2020 /etc/sudoers #文件权限很小,root也无法修改 - 执行visudo 在100行是sudo配置
root | ALL | =(ALL) | ALL |
---|---|---|---|
用户 | 主机 | 可以切换所有角色 | 执行所有命令 |
da All =(ALL) /usr/sbin/useradd,/usr/sbin/userdel #执行命令,越小越具体越好,允许执行这个命令拥有root权限
- sudo优点
不是root用户,还是自己
指定命令拥有root权限
不需要root 密码
-l
查看sudo权限- visudo 配置sudo 工具
-c
检测语法配置