Linux下sudo和su的作用和含义是什么,有何不同

Admin 2022-07-20 群英技术资讯 341 次浏览

今天就跟大家聊聊有关“Linux下sudo和su的作用和含义是什么,有何不同”的内容,可能很多人都不太了解,为了让大家认识和更进一步的了解,小编给大家总结了以下内容,希望这篇“Linux下sudo和su的作用和含义是什么,有何不同”文章能对大家有帮助。

区别:1、sudo是以root用户方式执行命令,su是用来变更其他使用者的身份来执行命令;2、sudo可以跳过root登录去执行一些特定的命令,只需提供当前的用户密码,而su不能跳过root登录,必须提供root用户密码。

本教程操作环境:linux7.3系统、Dell G3电脑。

linux中sudo和su有什么区别

什么是su

  su的全称并不是super user,而是switch user,是不是就突然明白了?是切换用户的意思。su的一般使用方法是su 或者su - ,两种方法虽然只差了1个字符,但也是有比较大的差异的。

  加入了-参数,就是login-shell的方式,也就是说切换到另一个用户之后,当前的shell会加载对应的环境变量和各种设置;

  如果没有加入-参数,就是non-login-shell的方式,也就是说当前的shell还是加载切换之前的那个用户的环境变量以及各种设置。

  如果不想因为切换到另一个用户导致自己在当前用户下的设置不可用,那么就可以用non-login-shell的方式;如果切换用户后,需要用到该用户的各种环境变量,那么使用login-shell方式即可。

su的用法

su (英文全拼:switch user)命令用于变更为其他使用者的身份。

示例:

(1)su #默认切换到root用户,输入root密码切换root用户,最后执行exit命令可以切换到原先的用户

这里的密码默认是不显示的,下图从 song用户 切换到了 root用户

输入exit 时,切换到原来的用户

(2)su (要切换的用户名)

从root用户 切换到了 song用户 注意:从root切换到别的用户是不用输入密码的

假设如果有很多人管理这个主机的话,那不是很多人要知道root的password,并且可能有的人仅仅只是操作一次,那么这个时候,su 方式就不是很好,root的password当然是越少人知道越好,越少人知道就越安全,这时就须要另外一种方式了。 就需要用sudo了

什么是sudo

  全称为super user do,即以超级用户的方式执行命令,这里的超级用户指的就是root用户,我们在Linux中有时会遇到permission denied的情况,如以ubuntu用户的身份查看/etc/shadow的内容,因为它是只有root用户才能查看的,这个时候就可以使用sudo。

两者的区别在于:

  使用su - 提供root账号的密码,可以切换到root用户;

  使用sudo su -,提供当前用户的密码,也可以切换到root用户。

  如果我们的Linux系统有很多用户需要使用的话,前者要求所有用户都知道root用户的密码,显然是非常危险的;后者是不需要暴露root账户密码的,用户只需要输入自己的账户密码就可以。而且哪些用户可以切换到 root,这完全是受 root 控制的(root 通过设置 /etc/sudoers 实现的),这样系统就安全很多了。


到此这篇关于“Linux下sudo和su的作用和含义是什么,有何不同”的文章就介绍到这了,更多相关内容请搜索群英网络以前的文章或继续浏览下面的相关文章,希望大家以后多多支持群英网络!
群英智防CDN,智能加速解决方案
标签: sudo和su的区别

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服