注意:这是一篇从旧博客恢复的文章。
我们知道,su是switch user的意思,用法是su username,如果省略user那么将会默认成root。
但是我在运行一段命令的时候,出了点问题。这个命令需要在root下运行。其实我之前一直是使用su - root的(或者su -),这是鸟哥书上说的,不过有次少打了个-,发现也能成功换成root,于是后来就不加-了。但是我这次运行却不成功,一直说找不到命令,这才发现出了问题。
查了资料才知道,su只是普通的切换用户,并不能获取该用户的环境变量。而我那个命令是在/sbin下的,/sbin只存在于root的环境变量中。现在我su并没有获得root的环境变量,当然就找不到那个命令了!
但是su -是可以获得那个用户的环境变量的。
所以我们需要用su - root或者su -来切换到root才不容易出现问题。
Comments
注:如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理。