② su;su -;sudo;sudo -i;sudo su;sudo su - 之间的区别

Posted gaoyuan_cnblogs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了② su;su -;sudo;sudo -i;sudo su;sudo su - 之间的区别相关的知识,希望对你有一定的参考价值。

今天我们来聊聊su;su -;sudo;sudo -i;sudo su;sudo su -他们之间的区别。

su :su 在不加任何参数,默认为切换到root用户,但没有转到root用户家目录下,也就是说这时虽然是切换为root用户了,但并没有改变工作目录和环境变量:

技术分享图片

su 加参数 -(-实际上是–login的缩写,等同于su --login) ,表示默认切换到root用户,并且改变到root用户的环境:

技术分享图片

虽然su命令是非常方便的用户切换工具,但是切换时都需要使用root这个无所不能的超级用户密码,这个在生产中有需要多用户管理时会存在很严重的安全隐患,;超级用户root密码应该掌握在少数用户手中,于是乎我们的sudo命令挺身而出,解决了老板们的顾虑哈哈哈,通过sudo,我们能把某些超级权限有针对性的下放,并且不需要普通用户知道root密码,所以sudo 相对于权限无限制性的su来说,还是比较安全的,所以sudo 也能被称为受限制的su ;另外sudo 是需要授权许可的,所以也被称为授权许可的su。

技术分享图片

sudo的运行过程是这样的:

  1. 检查用户是否在/etc/sudoers的列表中
  2. 如果在,以root权限执行命令
  3. 取消用户的root

sudo  sudo和su一样,没有切换工作目录和环境变量,只是赋予用户权限 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码。不过有时间限制,Ubuntu默认为一次时长15分钟。

技术分享图片

sudo -i  为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。没有时间限制。执行该命令后提示符变为“#”而不是“$”。想退回普通账户时可以执行“exit”或“logout” 。

技术分享图片


sudo su 

同样切换到root登录,su使用root的密码,而sudo su使用用户密码.

技术分享图片

 

sudo su -

同样切换到root登录,su使用root的密码,而sudo su -使用用户密码.

技术分享图片


以上是关于② su;su -;sudo;sudo -i;sudo su;sudo su - 之间的区别的主要内容,如果未能解决你的问题,请参考以下文章

su 和 su - 命令有何不同

linux命令su与su-的差别

su - 提示失败问题[su方式]

su 和 su -

Linux下su与su -命令的本质区别

Linux su命令——su默认不修改环境变量 su - 要修改当前工作目录和环境变量