登录
首页 >  文章 >  linux

su与sudo命令详解:Linux用户切换全攻略

时间:2026-01-22 10:56:37 291浏览 收藏

IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰。所以我们需要踏踏实实的不断学习,精进自己的技术,尤其是初学者。今天golang学习网给大家整理了《Linux用户切换命令su与sudo详解》,聊聊,我们一起来看看吧!

su用于切换用户会话需目标密码,sudo用于临时提权执行命令需当前用户密码;su -可完全切换环境,sudo更安全且支持权限审计,日常推荐使用sudo并用visudo编辑配置。

LINUX怎么切换用户_Linux用户切换命令su与sudo使用说明

在Linux系统中,切换用户是日常运维和使用中的常见需求。主要通过 susudo 两个命令实现,它们用途不同,机制也不同。下面详细介绍这两个命令的使用方法和注意事项。

su 命令:切换到另一个用户

su(switch user)用于切换当前登录用户到另一个用户账户,默认切换到 root 用户。

基本语法:

su [选项] [用户名]

常见用法:

  • su —— 切换到 root 用户,需要输入 root 密码
  • su -su --login —— 切换到 root 并加载其完整环境变量(推荐)
  • su username —— 切换到指定用户,需输入该用户的密码
  • su - username —— 切换并加载目标用户的登录环境

区别说明:

  • su username:仅切换用户身份,不改变当前工作目录和环境变量
  • su - username:完全切换,相当于以该用户重新登录,环境干净

提示:普通用户使用 su 切换到其他用户需要知道对方密码;root 用户使用 su 可以无需密码直接切换到任何用户。

sudo 命令:以其他用户身份执行单条命令

sudo(superuser do)允许授权用户以其他用户(通常是 root)身份执行命令,而无需知道目标用户的密码。

基本语法:

sudo [选项] 命令

常见用法:

  • sudo command —— 以 root 身份执行某条命令,需输入当前用户的密码
  • sudo -i —— 模拟登录 root 用户,进入 root 的 shell 环境
  • sudo -u username command —— 以指定用户身份执行命令
  • sudo su - —— 先用 sudo 获取权限,再切换到 root(某些系统允许)

配置文件:/etc/sudoers,可通过 visudo 命令安全编辑。

例如,允许用户 alice 使用 sudo:

alice ALL=(ALL:ALL) ALL

优点:

  • 不需要共享 root 密码
  • 可精细控制用户能执行哪些命令
  • 操作记录可审计(日志保存在 /var/log/auth.log 或 /var/log/secure)

su 与 sudo 的主要区别

  • 目的不同:su 是切换用户会话,sudo 是临时提权执行命令
  • 密码要求不同:su 需要目标用户密码,sudo 需要当前用户密码(若被授权)
  • 安全性:sudo 更安全,便于权限管理和审计
  • 使用场景:长期操作用 su -;临时管理任务推荐 sudo

实用建议

  • 日常运维尽量使用 sudo,避免直接登录 root
  • 使用 su - 而不是 su,确保环境正确
  • 不要随意修改 sudoers 文件,应使用 visudo 防止语法错误导致无法提权
  • 检查当前用户权限可用 sudo -l

基本上就这些。掌握 su 和 sudo 的使用,能更安全高效地管理 Linux 系统权限。

理论要掌握,实操不能落!以上关于《su与sudo命令详解:Linux用户切换全攻略》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

前往漫画官网入口并下载 ➜
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>