详解su、sudo和root之间的区别

自己在用ubuntu时,用sudo su来切换root用户;在虚拟机centOS上,用命令su -来切换root用户;

但不知道为何!

参考资料:

http://www.justwinit.cn/post/4461/

http://blog.csdn.net/ithiker/article/details/12855569

http://blog.csdn.net/trochiluses/article/details/8810010(经典)


对于其他Linux系统来说,一般在安装过程就设定root密码,这样用 户就能用它登录root帐户或使用su命令转换到超级用户身份。

与之相反,Ubuntu默认安装时,并没有给root用户设置口令,也没有启用root帐 户。问题是要想作为root用户来运行命令该怎么办呢?没关系,我们可以使用sudo命令达此目的。

---------------------------------------------------------------------------------------------------------

sudo意思就是super-user do,让当前用户暂时以管理员的身份root来执行这条命令。

su是用来改变当前用户的,su root,就是将当前用户切换为root,用了su root之后,下面所有的命令就可以不用打sudo了,因为当前用户已经是管理员root了。

-------------------------------------------------------------------------------

su 的用法:

  su [OPTION选项参数] [用户]

  -, -l, ——login 登录并改变到所切换的用户环境;

  -c, ——commmand=COMMAND 执行一个命令,然后退出所切换到的用户环境;

  至于更详细的,请参看man su ;


-------------------------------------------------------------------------------

Q: su 和 sudo 的区别?

共同点:都是root用户的权限;
不同点:su仅仅取得root权限,工作环境不变,还是在切换之前用户的工作环境;sudo是完全取得root的权限和root的工作环境。

Q: su - root 和 su root(su)有什么区别?

最直接的区别就是su目录还是原先用户的目录,但是su - root后目录就变为root用户的主目录了

你可能感兴趣的:(linux)