linux su和sudo命令的区别

Posted

tags:

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

su表示切换用户命令命令,如:
输入:su命令后回车表示切换当前的用户到root用户,或者:
输入:su - root(或者其他用户名)这里加了"-"后表示也切换的当前的环境变量到新用户的环境变量,su root(或者其他用户名)表示不切换环境变量到当前用户下。

sudo 表示获取临时的root权限命令,如:
sudo gedit /etc/shadow,表示临时使用root权限来编辑/etc/shadow密码文件,因为/etc/shadow密码文件需要使用root权限才能打开与编辑。所以这里使用了sudo命令临时使用root权限来做一些普通账户无法完成的工作~
参考技术A

定义上的区别:

su为switch user,即切换用户的简写。su是最简单的身份切换名,用su我们能够进行不论什么用户的切换,一般都是su-username,然后输入password就OK了,可是root用su切换到其他身份的时候是不需要输入password的。

sudo是一种权限管理机制,依赖于/etc/sudoers,其定义了授权给哪个用户可以以管理员的身份能够执行什么样的管理命令。

格式上的区别:

su格式有两种:su -l USERNAME、su USERNAME。

sudo格式:sudo -u USERNAME COMMAND。

密码上的区别:

两个命令的最大区别是:sudo命令需要输入当前用户的密码,su命令需要输入root用户的密码。

日志记录上的区别:

尽管sudo命令以目标用户的身份执行命令,但是它们会使用sudoer所配置的用户名来记录是谁执行的命令。而su命令是无法直接跟踪记录用户切换到root用户之后执行了什么操作。

灵活性上的区别:

sudo命令比su命令灵活很多,甚至可以限制sudo用户可以访问哪些命令。换句话来讲,用户通过sudo命令只能访问他们工作需要的命令,而su命令让用户有权限做任何事情。

Linux 命令 su 和 sudo 区别

以上是关于linux su和sudo命令的区别的主要内容,如果未能解决你的问题,请参考以下文章

linux su和sudo命令的区别

linux su和sudo命令的区别

linux命令su,sudo 使用和区别

linux su和sudo命令的区别

linux su和sudo命令的区别

linux命令sudo,su -和su的区别