怎么切换用户在linux中
怎么切换用户在linux中详细介绍
在 Linux 中切换用户主要有命令行和图形界面两种方式,以下是详细操作指南:
一、命令行切换用户
1.
su 命令基础用法
- 切换到指定用户:
使用su username命令(需输入目标用户密码)。例如,切换到用户alice:bashalice若目标用户是
root,可简写为su,但需输入root密码。 - 切换并加载完整环境:
使用su - username命令(含短横线-),会加载目标用户的环境变量、配置文件(如.bash_profile),并将工作目录切换至其家目录。例如:bash- alice此时执行
echo $HOME会显示/home/alice,而普通su alice仍保留原用户的$HOME。
2. 临时执行特定命令
- 以其他用户身份运行单个命令:
使用-c选项,例如以bob用户身份执行ls /etc:bashbob系统会提示输入
bob的密码,执行完毕后返回原用户。 - 以
root权限执行命令:
普通用户可通过sudo command临时获取root权限(需输入当前用户密码)。例如:bashupdate若需持续使用
root权限,可执行sudo su切换至root用户(无需输入root密码)。
3. 切换回原用户
- 使用
exit命令或快捷键Ctrl+D,例如从alice切回原用户:bash若通过
sudo su切换到root,同样可用exit返回。
二、图形界面切换用户
- 注销当前用户并重新登录:
在桌面环境(如 GNOME、KDE)中,点击屏幕右上角的用户名,选择 Logout,然后在登录界面选择其他用户并输入密码。 - 快速切换用户(部分发行版支持):
部分系统(如 Ubuntu)支持在不注销的情况下切换用户。点击用户名后选择 Switch User,输入目标用户密码即可。
三、权限与安全注意事项
- 权限要求:
- 普通用户切换至其他用户需输入目标用户密码。
root用户切换至其他用户无需密码。- 若提示
su: Permission denied,可能是因为未加入wheel组(需管理员配置/etc/pam.d/su)。
- 安全建议:
- 避免长期使用
root用户,优先用sudo执行特权命令。 - 切换用户时确保终端安全,防止密码泄露。
- 系统日志
/var/log/secure记录所有su操作,可用于审计。
- 避免长期使用
四、常见命令对比
| 命令 | 用途描述 |
|---|---|
su username |
切换用户,但保留原环境变量和工作目录。 |
su - username |
切换用户并加载完整环境(家目录、配置文件等)。 |
sudo command |
以 root 权限执行单个命令,需当前用户密码。 |
sudo su |
切换至 root 用户,无需输入 root 密码(需当前用户有 sudo 权限)。 |
exit / Ctrl+D |
退出当前用户会话,返回原用户。 |
五、示例场景
- 普通用户切换至
root:bash- root root用户切换至普通用户:bash- alice- 执行一次性
root命令:bash - 保留原环境切换用户:bash
alice
通过以上方法,可灵活在 Linux 中切换用户并管理权限。根据具体需求选择合适的命令,注意安全操作以保护系统和数据。