使用su命令临时切换用户身份

时间:2021-08-07 15:50:05
一、介绍
su 命令就是切换用户的工具
su - run a shell with substitute user and group IDs

二、su的使用方法
语法:

su [OPTION 选项参数] [用户]
参数:
-, -l, --login 登录并改变到所切换的用户环境; -c, --commmand=COMMAND 执行一个命令,然后退出所切换到的用户环境;

 

三、案例
1.su不添加任何参数
[oracle@ping ~]$ su root
密码:
通过切换的用户root,查看环境变量仍然是oracle,虽然切换为root用户了,但并
没有改变root登录环境
[root@ping oracle]# env | grep -E '(MAIL|LOGNAME)'
MAIL=/var/spool/mail/oracle
PWD=/home/oracle
LOGNAME=oracle

 

 2.su添加参数-,表示默认切换到root用户,并且改变为root的登录环境

[oracle@ping ~]$ su - root
密码:
[root@ping ~]# env | grep -E '(MAIL|LOGNAME|PWD)'
MAIL=/var/spool/mail/root
PWD=/root
LOGNAME=root

 

3.su切换用户oracle并执行命令id

[oracle@ping ~]$ su - oracle -c id
密码:
uid=501(oracle) gid=501(oracle) 组=501(oracle) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023