Linux 里 su 和 sudo 命令这两个有什么不一样?

《小菜狗 Linux 操作系统快速入门笔记》目录:
《小菜狗 Linux 操作系统快速入门笔记》(01.0)文章导航目录【实时更新】

Linux 是一个多用户的操作系统。在 Linux 中,理论上来说,我们可以创建无数个用户,但是这些用户是被划分到不同的群组里面的,有一个用户,名叫 root,是一个很特殊的用户,它是超级用户,拥有最高权限。但是在大多数版本的 Unix/Linux 中,都不推荐直接使用 root 账号登录系统。

自己创建的用户是有限权限的用户,这样大大提高了 Linux系统的安全性,有效防止误操作或是病毒攻击,但是我们执行的某些命令需要更高权限时可以使用 sudo 命令。

1、切换用户命令【su】

su 命令全称为"swith user",用于切换当前用户身份到指定用户或者以指定用户的身份执行命令或程序。

  • 普通用户切换到 root 用户,可以使用 su -- 或su root,但是必须输入 root 密码才能完成切换。
  • root 用户切换到普通用户,可以使用 su username,不需要输入任何密码即可完成切换。
  • 并且切换用户,需要 root 用户权限。

语法格式::

复制代码
su [选项] [用户名]

常用参数:

-c 或 --command 执行完指定的指令后,即恢复原来的身份
-f 或 --fast 适用于 csh 与 tsch,使 shell 不用去读取启动文件
-l 或 --login 改变身份时,也同时变更工作目录,以及 HOME,SHELL,USER,logname。此外,也会变更PATH变量
-m, -p 或 --preserve-environment 变更身份时,不要变更环境变量
等等 详情请参见:https://www.linuxcool.com/su

使用举例:

su 命令后面可以加"-"会将当前的工作目录自动转换到切换后的用户主目录。

命令 含义
su 切换到 root 用户
su root 切换到 root 用户
su - 切换到 root 用户,同时切换目录到 /root
su - root 切换到 root 用户,同时切换目录到 /root
su 普通用户 切换到普通用户
su - 普通用户 切换到普通用户,同时切换普通用户所在的目录

举例说明:

复制代码
sudo su --> 切换为root用户(exit 命令或 CTRL + D 快捷键都可以使普通用户切换为 root 用户)
su peng --> 切换为普通用户
su - --> 切换为root用户
  • 切换到管理员 root

    su
    或者
    sudo su

  • 切换用户

    su 用户名

注意:对于 ubuntu 平台,只能通过 su 或者 sudo su 进入 root 账号。

2、以 root 身份执行命令【sudo】

sudo 命令可以临时获取 root 权限,系统管理员允许普通用户执行 root 命令才能执行的操作。

扩展命令:

sudo -l :显示出自己<执行 sudo 的使用者>的权限

sudo !! :以 root 权限执行上一条的命令

注意:

sudo 和 su 命令输入回车完之后还需要输入用户密码的!如果你输入过一次,他将会有几分钟的记忆。

3、总结

有很多命令需要管理员权限才能使用,可以输入命令前加(sudo),也可以直接切换到管理员账号(su)再执行。

相关推荐
程序员老赵36 分钟前
服务器文件不想 SFTP 上传?Docker 跑个 File Browser,浏览器就能管理
服务器·docker·开源
火车叼位41 分钟前
写给初级开发者:SSL、SSH、HTTPS 与证书体系全解析
运维
vivo互联网技术5 小时前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
用户805533698035 小时前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户805533698035 小时前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式
小猿姐12 小时前
唯品会大规模数据库云原生实践:基于 KubeBlocks 管理数千实例的统一运维之路
运维·elasticsearch·云原生
七歌杜金房17 小时前
我终于又有了自己的 Linux 电脑
linux·debian·mac
神奇啊龙1 天前
我的第一个 TinyGo 项目:ESP32-C3 + DHT11 + SSD1306
物联网·嵌入式
SkyWalking中文站1 天前
认识 Horizon UI · 5/17:3D 基础设施地图
运维·监控·自动化运维