susu - 到底有什么区别?我在工作中,从普通用户切换到root用户,都是直接su -,都是习惯动作,没有使用过su,也没有追究过有神不同。今天看书的时候发现有条命令直接使用su,脑海里突然想到这两个有什么区别,搜索记忆,真没有这方面的知识,没知识不怕,就用实际命令操作,尽可能的找出区别,下面我们就开始用命令实例进行测试,先用普通用户登录Centos Linux 7.3系统,使用whoami命令确认用户为lxt,再用su命令进行切换,输入root用户的密码,进入“root”用户下,使用whoami查看当前用户,切实为root用户,再用命令env|egrep "USER|MAIL|PWD|LOGNAME"查看当前用户信息,很多都是切换前用户的信息,看来有问题。我们推出root用户,重新回到lxt普通用户。

我们再使用su - 或者su -root切换到root用户,使用whoami查看,当前用户为root用户,我们再用env|egrep "USER|MAIL|PWD|LOGNAME"查看相关信息,都是root用户的信息,这次我们真正地切换到了root用户。

 CentOS7.3学习笔记总结(三十一)_第1张图片

 CentOS7.3学习笔记总结(三十一)_第2张图片

su命令,只是切换了root的身份,但是shell环境、环境变量、工作目录等还都是普通用户的shellsu -命令,完全的切换到root用户,shell、环境变量等都是root用户,包括工作目录。如果不知道区别,我们使用su进行切换,在生产环境中肯定会造车无法预知的问题。

我们切换用户时请使用 su - 用户,可以切换到“用户”,包括root用户。