Linux中su,sudo,sudo su,sudo -i命令的使用和区别

杰哥的IT之旅

共 1089字,需浏览 3分钟

 ·

2021-10-25 17:06

在下方公众号后台回复:面试手册,可获取杰哥汇总的 3 份面试 PDF 手册。

sudo 与 su 命令的区别:

sudo 命令需要输入当前用户的密码,su 命令需要输入 root 用户的密码。

sudo 命令只允许使用提升的权限运行单个命令,而 su 命令会启动一个新的 shell,同时允许使用 root 权限运行尽可能多的命令,直到明确退出登录。

更多可参考:Linux 命令 su 和 sudo 的区别

su 切换不同的用户的身份:

默认只是切换身份,并没有切换环境变量,环境变量依然是普通用户的。

切换用户身份时,用户的环境变量也切换成新用户的环境变量,所以"-"不能省略,否则有些操作无法执行。

su root 输入root密码后切换到root用户但是pwd目录不变

su - root 输入root密码后切换到root用户但是pwd目录/root

sudo 命令:

sudo -i root 与sudo - root、sudo -i ,sudo - ,sudo root 效果相同 提示输入密码时该密码

为当前账户的密码,要求执行该命令的用户必须在sudoers 中才可以 su 需要的是切换后账户的密码,用法为“su 账户名称”

sudo : 暂时切换到超级用户模式以执行超级用户权限,一般指的是root 用户,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码。不过有时间限制,Ubuntu 默认为一次时长15 分钟。

su : 切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为“su 账户名称”。如果后面不加账户时系统默认为root 账户,密码也为超级账户的密码,没有时间限制。

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

“$”:想退回普通账户时可以执行“exit”或“logout” 。要求执行该命令的用户必须在sudoers 中才可以。

作者:大浦河畔

推荐阅读

一文搞定 | Linux 共享内存原理


Linux 进程管理之四大名捕


Linux 服务器上监控网络带宽的18个常用命令


写了两份 Linux 手册!


77% 的 Linux 运维都不懂的内核问题,这篇全告诉你了

浏览 28
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报