su与sudo的区别

在Linux系统上操作的时候,如果某些命令需要root权限才能执行,我们需要切换到root用户,这时我们有两种方法。

第一种: 直接切换到root用户,执行该命令。该命令不仅把用户身份切换为root,也把工作环境切换到了root。su - 与 su - root是同样的功能

[[email protected]129-232 ~]$ su -
Password:
Last login: Tue Jun  2 16:33:46 CST 2015 on pts/0
[[email protected]-129-232 ~]# whoami
root[[email protected] ~]# pwd/root

第二种: 使用sudo。通过su - / su - root切换到root用户和环境后,可以进行任何操作,而通过sudo可以把某些超级用户root拥有的权限有限制的开放,也就是说sudo是有限制的su。sudo不要求用户知道root的密码,但需要授权许可。

sudo命令执行的流程是从当前用户切换到root用户,以root用户执行指定命令后,退回到切换前的用户。

[[email protected]129-232 ~]$ sudo docker images
[sudo] password for yapei:
yapei is not in the sudoers file.  This incident will be reported.

sudo命令执行没有成功,表示该用户不能执行sudo命令,那么如何给某个指定用户授权?

su - / su - root切换到root用户后,vi /etc/sudoers文件,在该文件中加入一行 yapei ALL=(ALL) ALL后,退出root用户

[[email protected]129-232 ~]# cat /etc/sudoers | grep yapei
yapei   ALL=(ALL)       ALL

再重新执行sudo命令,发现sudo命令执行成功,跟切换到root再执行命令的结果是一样的。

[[email protected]129-232 ~]$ sudo docker images
[sudo] password for yapei:
sudo: docker: command not found[[email protected] ~]$ whoamiyapei

这是切换到root执行命令的结果

[[email protected] ~]# whoamiroot[[email protected]129-232 ~]# docker images
bash: docker: command not found...
时间: 2024-07-31 13:32:06

su与sudo的区别的相关文章

Linux实际操作中命令 su 与 sudo 的区别

------------------------------------------------------------------------------------------------ 首先我先做了一些更改操作: 换到root用户的操作=>sudo su输入当前用户的密码: ****** 修改root密码的操作=>passwd 123456 /* root密码已改为123456 */ [email protected] chenwei <www.chenwei.ws>---

实际操作中命令 su 与 sudo 的区别(转)

------------------------------------------------------------------------------------------------ 首先我先做了一些更改操作: 换到root用户的操作=>sudo su输入当前用户的密码: ****** 修改root密码的操作=>passwd 123456 /* root密码已改为123456 */ [email protected]or chenwei <www.chenwei.ws>-

Linux:su 和 sudo的区别

<div id="article_content" class="article_content"> <p>        我们都知道非常多的文件都仅仅有root有权限来改动,那么在我们平时的开发过程中都建议使用一般账号来登录进行开发.还记得前面说到的ssh吗.我们也是将同意root登录设置成no.到必要的时候再切换到root来进行操作,这样就不至于有风险.</p><p>那么我们怎样切换身份呢.</p> &

su与su -,sudo 的区别

"sudo" , "su" , "su - " 区别: 一.sudo是一种权限管理机制,依赖于/etc/sudoers,其定义了授权给哪个用户可以以管理员的身份能够执行什么样的管理命令: 格式: sudo -u USERNAME COMMAND 默认情况下,系统只有root用户可以执行sudo命令.需要root用户通过使用visudo命令编辑sudo的配置文件/etc/sudoers,才可以授权其他普通用户执行sudo命令. 二.su 为 swi

设置root密码,su与sudo的区别

sudo passwd root 可以修改root密码,但首先会要求你输入当前用户的密码 sudo的意思是switch user do,默认切换到root,要求当前用户的密码,会自动调用exit返回到原用户 su没有参数的话就默认切换到root,要求root密码.可以通过调用exit返回到原用户. 在权限上,sudo的权限可以被配置从而对每个用户,sudo的权限范围不同,而su直接可以获取最高的root权限.

Linux su和sudo的区别

命令 su需要被切换用户的密码,比如root的密码,风险大 visudo visudo 赋权root的部分执行权限.  which寻找命令的具体地址. 赋权 原文地址:https://www.cnblogs.com/Brake/p/12208558.html

su root、sudo su、sudo -i的区别

这个su root就是一个切换用户命令,root是用户名,那么你需要输入的就是root账户的密码,但是ubuntu是禁用root登录的,所以给root设了个诡异的密码,它的密码并非你装的时候设的密码,但是可以开启root,不过建议别开启,要用什么root权限做事在前面加sudo就行了.如果你不开启的话根本就没法登,自然sudo root再输入密码无法登录了.而sudo su后面什么都不加默认就转到root了,你机器里就一个root是超级权限.而sudo时是你现在登录的这个用户sudo,密码就是你

su 和 sudo、su root和su - root 区别

su 和 sudo.su root和su - root 区别 su是superuser的前面两字母. su root=sulike you open an interactive shell in root name,then only .bashrc will be sourced. su root和su一样:表示与root建立一个链接,通过root执行命令,其实就是进程的有效用户ID变成了root,unix校验进程的权限都是校验的有效用户ID,进程的实际用户ID还是当前登录系统的用户,主目录

【linux】su、sudo、sudo su、sudo -i的用法和区别

来源:http://bbs.csdn.net/topics/390938651 sudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码.不过有时间限制,Ubuntu默认为一次时长15分钟.su : 切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为"su 账户名称".如果后面不加账户时系统默认为root账户,密码也为超级账户的密码.没有时间限制.sudo -i: 为了频繁的执行某些只有超级用户才能执行的权限,而