如何在 Linux 命令行中更改用户
Linux 系统具有不同类型的用户,并且具有不同的类型或权限。
并非所有用户都可以执行所有命令,也并非所有用户都可以切换到其他用户。这一切可能听起来令人困惑,但我会尝试解释这些,以便于理解。
目前,这里简要介绍如何在 Linux 命令行中切换用户。
要切换用户,您需要知道该用户的密码。您可以使用以下命令切换用户:
su – <username>
要在 Ubuntu 中切换到 root 用户,可以使用以下命令:
sudo -i
Linux中的各种用户类型
如果你列出 Linux 中的所有用户,你会看到很多你不知道的用户。这些用户是谁?他们来自哪里?我可以写一整篇文章来介绍 Linux 中的用户工作方式,但这不是本文的重点。
基本上,Linux 中有三种类型的用户:
1. 系统用户
这些是在 Linux 系统中自动创建的用户,以便能够运行服务或应用程序,并且不旨在登录系统(事实上您不能以这些用户中的任何一个身份登录)。
2. 普通用户
这些是可以登录系统的(人类)用户。这些用户中的每一个在系统中可能拥有或不拥有不同的权限或级别,这些权限或级别由他们所属的组赋予。
3.超级用户
这些是系统管理员或用户,他们可以执行被视为关键或系统危险的高级任务。
在命令行中切换用户
使用 Linux 系统时,您可以以某个用户身份登录,然后通过同一命令行会话简单地“切换”到另一个用户。为了做到这一点,有一个命令“su -”,它允许您切换到另一个用户:
johndoe@system:~$ su - janedoe
Password:
janedoe@system:~$
在上面的例子中,您需要知道 janedoe 的密码才能切换到该用户。这是有道理的,因为如果您要切换到某个用户,您需要知道该用户的密码,否则就会存在安全风险。
切换到root用户
出于安全原因,某些系统会阻止“root”帐户直接登录(无论是本地还是远程),这意味着即使有人输入正确的密码,系统也不会接受尝试使用“root”帐户登录的人。
那么,如何以“root”用户身份执行操作?这就是“sudo”命令允许您执行的操作。
sudo 命令基本上会执行系统中您想要的任何操作,就像“root”正在执行一样。您不需要知道“root”用户的密码,事实上,可能没有人知道它,或者没有为“root”分配密码。您只需要知道您自己的用户的密码,并且该用户必须属于“sudoers”组,该组基本上是可以在系统中使用“sudo”的用户组。
通常情况下,使用 sudo 运行需要以 root 权限运行的命令是一种很好的做法,如下所示:
sudo <command>
但是如果您想切换到 root 用户,以便所有后续命令都以 root 身份运行,则可以使用:
sudo -i
您将在这里使用自己的密码,而不是 root 帐户的密码。
作为 sudo 用户,您可以通过将用户添加到 sudo 组来创建 sudo 用户。
结论
Linux 系统允许您使用“su”和“sudo”命令轻松切换用户或执行高级命令。请记住:sudo 权力越大,责任越大!