首页 > 代码库 > 不可不知的su与su -的区别!

不可不知的su与su -的区别!

这是一个很容易让人忽视的问题:

    习惯了root,但是新工作环境中,不提倡使用root操作,所以经常用到su命令。使用中经常遇到这样的问题:

        我从root切换到普通用户后,有时候直接运行ifconfig命令可以运行,有时候提示找不到命令,需要加全路径/sbin/ifconfig运行。后来研究发现:

        su命令只是切换了到了普通用户身份,但Shell环境仍然是root用户的Shell;这时候可以查看环境变量,echo $PATH  还是root用户的,包含/sbin/等等,那么这时候直接执行ifconfig是没有问题的。

         su - 用户名 这样子切换到普通用户身份,连同Shell环境一起切换成普通用户身份,,pwd一下,发现工作目录变成了普通用户的工作目录。这时候查看环境变量,发现已经是普通用户的环境变量了。这时候直接执行ifconfig就得加绝对路径了

         

          同理,普通用户切换到root用户道理一样,所以,提倡用su -   

                                     

       

本文出自 “愤怒的小甲鱼” 博客,请务必保留此出处http://qjslovemsn.blog.51cto.com/10615974/1863963

不可不知的su与su -的区别!