关于linux:Linux-使用-su-切换用户或指定用户执行命令

应用阐明

# su -h

用法:
 su [选项] [-] [USER [参数]...]

将无效用户 id 和组 id 更改为 USER 的 id。如果未指定 USER,默认为 root。

选项:
 -, -l, --login                 切换用户时,同时切换环境变量(home,shell,user,logname,path等),不应用则获得用户的长期权限,不加载环境变量。用su命令切换用户后,能够用 exit 命令或快捷键[Ctrl+D]返回原登录用户
 -c, --command <命令>            应用 -c 向 shell 传递一条命令
 -s, --shell <shell>            指定应用的shell,默认为/etc/passwd文件中设定的值

应用示例:
su - admin -s /bin/sh -c "id"

常见的shell:

/bin/sh
/bin/bash
/sbin/nologin

runuser、su、sudo 的区别

命令 root到用户 用户到root 用户到用户 认证形式 日志文件 备注
runuser Y N N 比 su 更底层。
su Y Y Y 指标用户的明码 /var/log/auth.log 或/var/log/secure root 明码泄露危险。
sudo Y Y Y 本人的明码 /var/log/auth.log 或/var/log/secure 让用户以 root 运行某些(或全副)命令。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理