1818IP-服务器技术教程,云服务器评测推荐,服务器系统排错处理,环境搭建,攻击防护等

当前位置:首页 - Linux系统 - 正文

君子好学,自强不息!

可能大家还对“linux中sudo和su有什么区别 linux中su和su-的区别”有些不明白,下面由1818ip小编来为大家解答一下,现在我们来一起看看吧!

本教程操作环境: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用户

111.png

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

222.png

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

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

333.png

假设如果有很多人管理这个主机的话,那不是很多人要知道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有什么区别 linux中su和su-的区别”的详细内容,更多请关注1818ip网其它相关文章!

本文来源:1818IP

本文地址:https://www.1818ip.com/post/4135.html

免责声明:本文由用户上传,如有侵权请联系删除!

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。