怎么切换用户登录linux
怎么切换用户登录linux详细介绍
在 Linux 系统中切换用户登录主要通过命令行工具和图形界面两种方式实现,具体操作如下:
一、命令行方式
1.
su 命令(完全切换用户)
- 功能:切换到指定用户并启动新的 Shell 会话,需输入目标用户密码。
- 用法:
- 切换到 root 用户:bash
-- root
输入 root 密码后进入 root 环境,提示符变为
#。使用exit或Ctrl+D返回原用户。 - 切换到其他普通用户:bash
- username需输入目标用户
username的密码。
- 切换到 root 用户:bash
- 注意:
su(不带-)仅切换用户身份,不加载目标用户的环境变量,当前工作目录不变。- 普通用户切换到 root 需输入 root 密码,而 root 切换到普通用户无需密码。
2.
sudo 命令(临时提升权限)
- 功能:以其他用户身份执行单条命令,需当前用户有 sudo 权限。
- 用法:
- 执行单条命令:bash
输入当前用户密码后执行命令,执行完毕自动返回原用户。
- 切换到 root 并保持会话:bash
无需 root 密码(需当前用户已授权),直接进入 root 环境。
- 执行单条命令:bash
- 配置权限:
- 默认仅 root 可使用 sudo,普通用户需通过
visudo编辑/etc/sudoers文件授权,例如:bashjohn ALL ALL - 可限制用户仅执行特定命令(如
/sbin/shutdown)以增强安全性。
- 默认仅 root 可使用 sudo,普通用户需通过
二、图形界面方式
1. 注销并重新登录
- 在 GNOME/KDE 等桌面环境中,点击右上角用户图标,选择 “注销”,然后选择其他用户登录。
2. 切换虚拟终端
- 使用快捷键 Ctrl+Alt+F2~F6 切换到命令行终端(tty2~tty6),输入用户名和密码登录。
- 按 Ctrl+Alt+F1 返回图形界面(tty1)。
3. 直接切换用户(部分环境支持)
- 在某些桌面环境(如 GNOME)中,按 Alt+F2 输入
gnome-session-quit --logout,选择 “切换用户”。
三、关键区别与注意事项
- su vs sudo:
su需目标用户密码,完全切换会话;sudo需当前用户密码,仅临时执行命令。sudo更安全,可通过配置文件精细控制权限,避免共享 root 密码。
- 环境变量:
su -会加载目标用户的环境变量(如PATH、HOME),而su保持当前环境不变。- 若执行命令后提示找不到工具(如
vim),可能是环境变量未正确加载,建议使用su -或sudo -i。
- 发行版差异:
- Ubuntu 默认允许普通用户通过
sudo执行命令,而 CentOS 等需手动授权。 - openEuler 等系统默认禁止普通用户使用
su,需加入wheel组或修改配置文件。
- Ubuntu 默认允许普通用户通过
- 安全建议:
- 避免长期以 root 身份操作,完成任务后及时退出(
exit)。 - 定期检查
sudoers文件,确保权限分配合理,防止滥用。
- 避免长期以 root 身份操作,完成任务后及时退出(
四、示例场景
- 普通用户临时执行 root 命令:
bashupgrade - 切换到 root 并修改系统文件:
bash/etc/apt/sources.list
- 切换到其他用户并保持环境:
bash- developer912 developer
通过以上方法,可灵活在 Linux 系统中切换用户,满足不同权限需求。