为了保护 Linux 内核免受未经授权的访问,操作系统提供了一个选项来创建具有不同权限的不同用户。 Linux 允许您使用命令轻松切换用户。在本文中,我们将探讨直接从 Linux 终端切换用户的几种不同方法,无论您需要执行管理任务还是只是以超级用户身份运行命令。 
Linux 用户的三种类型
在开始切换用户之前,我们先来了解一下Linux中不同类型的用户。 Linux 用户分为三种不同类型。
- 系统用户或非登录用户:这些类型的用户没有登录或 shell 访问权限。它们通常用于运行特定的服务或应用程序。有关非登录用户的更多信息,请参阅如何在 Linux 上创建非登录用户。
- 普通用户:这些类型的用户帐户根据文件权限对文件系统的访问受到限制。但是,您可以使用 su 或 sudo 命令获取管理员权限。
- 根用户(超级用户/管理员):这些类型的用户帐户可以完全不受限制地访问整个文件系统,并具有最高级别的安全许可。

如何在Linux上使用su命令切换用户
su 命令是 switch user 的缩写,是从一个用户帐户切换到另一个用户帐户的强大工具。在 Linux 终端中使用 su 命令切换用户的语法为:
su <options> <username>在上述语法中,将 <username> 替换为您要切换到的用户帐户的名称。与 su 命令结合使用的常见选项包括: 选项 解释 -c 将命令传递到切换用户的新 shell。 -s 指定另一个 shell 而不是默认的 /bin/sh。 -P 使用时,会为不与原会话共享的会话创建一个新的伪终端,以提高安全性。 -l 在类似于真实登录的环境中启动 shell 作为登录 shell。 -g 用于指定主要组。 
1.切换到普通用户
要在 Linux 上使用 su 命令切换到普通用户,请使用以下语法:
su <options> <username>例如,要切换到“test”用户,请使用以下命令:
su -l test1现在输入您要切换到的用户的密码,然后按 Enter。您可能会注意到 shell 提示符中缺少您的用户名,或者您甚至无法使用箭头键进行导航或使用 Tab 键使用语法自动完成功能。这意味着外壳不稳定。要生成稳定的 shell,请使用以下命令:
/bin/bash/ -i新用户名出现在 shell 提示符处。您还可以使用箭头键导航并使用 Tab 键自动完成。
2.切换到root用户。
在某些情况下,您可能需要使用 root 用户帐户来执行某些管理任务。要在 Linux 上切换到 root 或超级用户,请使用 su 命令:
su -系统将要求您输入 root 用户密码。输入您的 root 密码并按 Enter 键。 root 用户名现在将显示在 shell 提示符处。现在可以以 root 用户身份运行所有命令。

如何使用 sudo 命令在 Linux 上切换用户
sudo 命令代表“超级用户执行”。此命令通常用于以 root 或超级用户身份运行各种命令。不过,通过一个小技巧,您可以使用 sudo 命令在 Linux 上切换用户。在此之前,我们先看一下sudo命令的语法。
sudo <options> <parameters> <command>在上面的语法中,<command> 指定应以不同用户身份运行的命令以及与该命令组合的 <parameters>。可以与 sudo 命令结合使用的常见选项包括: 选项 解释 -b 在后台运行指定的命令 -u 使用作为参数传递的特定用户名运行指定的命令 -n 使用时,它返回一个非交互式 shell,并防止提示用户进行任何类型的输入。 -T 设置命令超时。如果在命令终止之前超时已过,则命令终止。 -我 运行目标用户的密码数据库条目中指定的 shell 作为登录 shell。
1. 更改为普通用户
要在 Linux 上使用 sudo 命令切换到常规 Linux 用户,请使用以下语法:
sudo -u <username_to_switch_to> /bin/bash在上面的语法中,
- -u 标志用于指定要切换到的用户名。
- /bin/bash 指定为该用户生成bash shell
例如,如果要切换到用户 test1,请使用以下 sudo 命令:
sudo -u test1 /bin/bash运行上述命令后,系统将提示您输入 root 用户密码。输入您的 root 密码并按 Enter 键。提示符显示切换后的用户名。
2.切换到root用户。
使用 sudo 命令切换到 root 用户:
sudo -u root /bin/bash然后输入您的 root 密码并按 Enter 键。 shell 提示符更改为您的 root 用户名。
所有用户信息都存储在/etc/passwd 文件中。使用cat命令查看文件内容: cat /etc/passwd
不可以,您必须知道要切换到的用户的密码。如果您以root用户登录,则无需知道密码即可切换。





![2021 年如何设置 Raspberry Pi Web 服务器 [指南]](https://i0.wp.com/pcmanabu.com/wp-content/uploads/2019/10/web-server-02-309x198.png?w=1200&resize=1200,0&ssl=1)

