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

本文探讨了Linux系统中su、sudo命令与root用户的关系。Ubuntu默认不设置root密码,使用sudo执行管理员操作。su用于切换用户,如su - root可切换到root环境,而sudo则让用户临时获得root权限。su仅改变用户,环境保持不变,su - 则切换到完整root环境。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

但不知道为何!

参考资料:

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

http://blog.youkuaiyun.com/ithiker/article/details/12855569

http://blog.youkuaiyun.com/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用户的主目录了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值