📜  su 和 su 的区别——Linux 中的命令(1)

📅  最后修改于: 2023-12-03 14:47:44.518000             🧑  作者: Mango

Linux命令: 'su' 和 'su' 的区别

在Linux中,'su'和'su'是两个常用的命令,用于在终端中切换用户。本文将对这两个命令进行介绍,并比较它们之间的区别。

su命令

'su'命令是“切换用户”的缩写,用于在终端中切换到指定的用户身份。通常,使用'su'命令需要提供目标用户的密码。

用法
su [选项] [目标用户]
示例
su    # 切换到root用户,需要输入root密码
su user2   # 切换到user2用户,需要输入user2密码
区别
  • 'su'命令可以切换到任何用户,包括root用户,只要提供了正确的密码。
  • 'su'命令会启动一个新的shell会话,以目标用户的身份运行命令。这意味着切换用户后,当前工作目录和环境变量都会发生变化。
sudo命令

'sudo'命令是“以超级用户权限运行命令”的缩写,它允许授权用户以其他用户的身份运行命令,而无需知道目标用户的密码。

用法
sudo [选项] [命令]
示例
sudo apt-get update   # 以root权限运行apt-get update命令
sudo -u user2 command   # 以user2用户身份运行指定命令
区别
  • 'sudo'命令需要授权用户的密码,而不是目标用户的密码。
  • 'sudo'命令可以在授权用户的环境变量下运行命令,而不会启动一个新的shell会话。
  • 'sudo'命令通常与sudoers文件一起使用,以授予特定用户或用户组以特定的执行权限。
总结

'su'和'sudo'命令都用于在Linux终端中切换用户,但有一些重要的区别。'su'命令需要提供目标用户的密码,并启动一个新的shell会话;而'sudo'命令需要授权用户的密码,并在当前环境下执行命令。根据具体需求,程序员可以选择使用适当的命令来切换用户并运行命令。

以上就是'su'和'su'命令的区别介绍。希望对你有所帮助!