Linux su与sudo使用说明_Linux用户权限提升方法

admin 百科 17
Linux提升权限主要有su和sudo两种方式:su切换用户身份需目标密码,环境随之改变;sudo以当前用户身份执行特权命令,需自身密码或免密配置,更安全可控。

Linux su与sudo使用说明_Linux用户权限提升方法-第1张图片-佛山资讯网

Linux 中提升权限主要有 susudo 两种方式,核心区别在于:su 切换用户身份(默认 root),需目标用户密码;sudo 以当前用户身份临时执行特权命令,需自身密码(或免密配置),更安全、更可控。

su:切换用户身份

su(substitute user)用于切换到另一个用户,默认是 root。执行后会启动新 shell,环境变量、工作目录等随之改变。

  • 不加参数:su → 提示输入 root 密码,切换为 root,但保留当前用户的环境(非登录 shell)
  • 加 - 或 -l:su - 或 su -l → 完整登录 root,加载 /root/.bashrc、/root/.profile 等,工作目录变为 /root
  • 指定用户:su -l username → 切换到指定用户,需该用户密码
  • 注意:普通用户需知道 root 密码才能用 su 切换,这在多管理员环境中存在密码分发与审计难题

sudo:以授权方式执行命令

sudo(superuser do)允许特定用户在不暴露 root 密码的前提下,按策略执行特权命令。行为由 /etc/sudoers 配置文件控制,推荐用 visudo 编辑(自动语法检查)。

  • 基本用法:sudo command → 以 root 身份运行 command,首次使用需输入当前用户密码(5 分钟内再次 sudo 不再提示)
  • 切换用户:sudo -u username command → 以指定用户身份运行命令(如 sudo -u www-data php artisan migrate)
  • 获得交互式 shell:sudo -i → 类似 su -,启动 root 的登录 shell;sudo -s → 启动 root 的非登录 shell(环境变量不变)
  • 查看权限:sudo -l → 显示当前用户被授予的 sudo 命令列表

安全配置建议

避免直接开放 root 密码或无限制 sudo 权限,应遵循最小权限原则。

标签: php linux python nginx ubuntu 环境变量 配置文件 区别 常见问题

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~