切换用户

时间:2025-03-26 13:22:18 计算机

在 Linux 系统中,`su` 命令用于切换到另一个用户身份。它通常被用来从普通用户切换到超级用户(root)以执行需要更高权限的操作。`su` 命令通过输入目标用户的密码来验证身份,并为用户提供目标用户的权限。

使用方式

`su` 命令的基本使用格式如下:

```sh

su [options] [user [argument...]]

```

常用选项

`-c, --command=command`: 将一个具体的命令传递给目标用户的 shell 以执行。

`-f, --fast`: 将 `-f` 参数传递给被调用的 shell。其具体作用依赖于目标用户所使用的 shell 类型。

`-g, --group=group`: 指定一个组(group),作为目标用户的主组(primary group)。只有 root 用户才可以使用这个选项。

`-G, --supp-group=group`: 指定一个或多个补充组(副组),只有 root 用户可以使用这个选项。

`-l, --login`: 启动一个 Shell 会话,并使其环境配置类似于真实的登录过程。初始化 HOME、SHELL、USER、LOGNAME 和 PATH 这几个环境变量。

示例

切换到 root 用户

```sh

su

```

输入 root 用户的密码后,你将切换到 root 用户。

切换到指定用户

```sh

su username

```

输入指定用户的密码后,你将切换到该用户。

执行特定命令

```sh

su -c 'command' username

```

以指定用户的身份执行 `command` 命令,执行后立即返回原来的用户身份。

注意事项

使用 `su` 命令需要输入目标用户的密码。

只有 root 用户和目标用户本人可以切换到该用户。

在某些情况下,可能需要配置服务以支持快速用户切换。

通过以上信息,你可以根据需要在 Linux 系统中切换用户。