仅变更操作身份,不加载目标用户环境变量,当前所在工作目录保持不变,PATH、HOME等环境变量仍先用原登录用户
示例:su root
模拟完整重新登录流程:
示例:su - root
临时以管理员权限执行单条命令,不会切换shell会话,仅当前这一条命令提权,执行完立刻退回原用户
示例:sudo cat /etc/shadow
切换至root shell,但不完整加载root登录环境:
适用:临时root交互shell,不需要完整root环境
完全模拟root登录。效果等同su - root
/rootroot/.bash_profile、/root/bashrc| 命令 | 是否切换环境 | 是否切换家目录 | 验证密码 | 使用场景 |
|---|---|---|---|---|
| su root | 否 | 否 | root密码 | 知道root密码,临时换身份 |
| su - root | 是 | 是 | root密码 | 需要完整root登录环境 |
| sudo 指令 | 不换shell | 不切换 | 当前用户 | 单条命令临时提权 |
| sudo -s | 部分加载 | 不切换 | 当前用户 | 简易root交互shell |
| sudo -i | 完整加载root | 切换至/root | 当前用户 | 日常运维,完整root登录环境 |
本文作者:zzz
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!