su(switch user): 切换用户


1.命令作用:

    切换用户,需要重新键入密码(从root用户切换到普通用户不需要密码)。


2.使用方式:

    su [optionas] USERNANME


3.参数说明:

    -l:重新登录,大部分环境变量如:HOME、SHELL、USER都是以切换的用户为主,并且工作目录也会改变。


4.范例:


[root@localhost ~]# su cgy

[cgy@localhost root]$ pwd

/root


[cgy@localhost root]$ su -l cgy

Password: 

[cgy@localhost ~]$ pwd

/home/cgy

[cgy@localhost ~]$ 


su和su -l的区别:

    su命令和su -l命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell;而后者连用户和Shell环境一起切换成root身份了。只有切换了Shell环境才不会出现PATH环境变量错误。su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录;而用su -命令切换以后,工作目录变成root的工作目录了。用echo $PATH命令看一下su和su -以后的环境变量有何不同。以此类推,要从当前用户切换到其它用户也一样,应该使用su -l命令。