linux su和sudo命令的区别

 我来答
老男孩教育
2022-03-09 · 百度认证:北京一天天教育科技有限公司官方账号,教育领域创作者
老男孩教育
专注于Linux高级运维、Python开发、大数据培训,为您分享行业前沿的技术,有效的学习方法和有价值的学习资料。
向TA提问
展开全部
什么是su?
su的全称并不是super user,而是switch user,是不是就突然明白了?是切换用户的意思。su的一般使用方法是su或者su -,两种方法虽然只差了1个字符,但也是有比较大的差异的。
加入了-参数,就是login-shell的方式,也就是说切换到另一个用户之后,当前的shell会加载对应的环境变量和各种设置;
如果没有加入-参数,就是non-login-shell的方式,也就是说当前的shell还是加载切换之前的那个用户的环境变量以及各种设置。
如果不想因为切换到另一个用户导致自己在当前用户下的设置不可用,那么就可以用non-login-shell的方式;如果切换用户后,需要用到该用户的各种环境变量,那么使用login-shell方式即可。
什么是sudo?
全称为super user do,即以超级用户的方式执行命令,这里的超级用户指的就是root用户,我们在Linux中有时会遇到permission
denied的情况,如以ubuntu用户的身份查看/etc/shadow的内容,因为它是只有root用户才能查看的,这个时候就可以使用sudo。
两者的区别在于:
使用su - 提供root账号的密码,可以切换到root用户;
使用sudo su -,提供当前用户的密码,也可以切换到root用户。
如果我们的Linux系统有很多用户需要使用的话,前者要求所有用户都知道root用户的密码,显然是非常危险的;后者是不需要暴露root账户密码的,用户只需要输入自己的账户密码就可以。
百度网友4019040
2016-06-01 · TA获得超过466个赞
知道小有建树答主
回答量:372
采纳率:66%
帮助的人:210万
展开全部
你好,可以见这篇文章 http://www.jb51.net/LINUXjishu/12713.html

su ,通过切换到root下,能完成所有系统管理工具,只要把root的密码交给任何一个普通用户,他都能切换到root来完成所有的系统管理工作;
sudo,我们能把某些超级权限有针对性的下放,并且不需要普通用户知道root密码,所以sudo 相对于权限无限制性的su来说,还是比较安全的,所以sudo 也能被称为受限制的su ;另外sudo 是需要授权许可的,所以也被称为授权许可的su;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友31347a8
2016-05-25
知道答主
回答量:6
采纳率:0%
帮助的人:5799
展开全部
su root和sudo su 所获取的权限有很大的区别
sudo su实际上还是在sudo的空间里运行
sudo su 继承于sudo组(一般有局限,只能运行某些特权命令而已)
su root是切换到root账户了 root有啥权限你就有啥权限
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
春风化雨zyy
2016-08-04 · TA获得超过574个赞
知道小有建树答主
回答量:1244
采纳率:20%
帮助的人:256万
展开全部
这种问题怎么说那。su 是谋朝篡位直接登基root想干啥干啥。

sudo 是大臣 拿着尚方宝剑去砍人。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
信息技术知识
2016-08-19 · TA获得超过133个赞
知道答主
回答量:164
采纳率:0%
帮助的人:56.8万
展开全部
su:命令主要用于切换用户,当不输入参数时,切换至root用户
sudo:是在普通用户身份下,以root权限执行一次命令
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式