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检测语法配置
本文详细介绍了Linux中su和sudo命令的使用。su命令用于切换用户角色,加'-'参数可携带所有环境变量,而sudo则允许以非root用户身份执行具有root权限的特定命令,提供更安全的管理方式。sudo配置文件/etc/sudoers限制了权限,并通过visudo进行编辑。sudo的优点在于它避免了频繁使用root密码,仅在执行特定命令时赋予临时权限。

2041

被折叠的 条评论
为什么被折叠?



