ubuntu如何创建和删除普通新用户
在Linux系统上添加和删除用户是您需要熟悉的最重要的系统管理任务之一。当您创建一个新系统时,通常默认情况下仅授予您对root帐户的访问权限。
虽然以root用户身份运行可以让您完全控制系统及其用户,但它也很危险,可能具有破坏性。对于常见的系统管理任务,最好添加一个没有特权的用户,然后在没有root权限的情况下执行这些任务。您还可以为系统上的任何其他用户创建其他非特权帐户。系统上的每个用户都应该有自己的独立帐户。
对于需要管理员权限的任务,Ubuntu系统上安装了一个名为sudo
的工具。简而言之,sudo
允许您以其他用户(包括具有管理权限的用户)的身份运行命令。在本指南中,您将学习如何创建用户帐户、分配sudo
权限和删除用户。
要完成本教程,您需要访问运行Ubuntu 20.04的服务器。确保您对服务器具有root访问权限并启用防火墙。要进行设置,请遵循我们的Ubuntu 20.04初始服务器设置指南。
如果您以root用户身份登录,则可以随时通过运行以下命令创建新用户:
如果您是以拥有sudo
权限的非root用户身份登录的,则可以使用以下命令添加新用户:
无论哪种方式,您都需要回答一系列问题:
ENTER
跳过。
Y
继续。
您的新用户现在可以使用了,可以使用您输入的密码登录。
如果您需要新用户具有管理权限,请继续下一节。
如果您的新用户应该能够以root(管理员)权限执行命令,则需要给予新用户对sudo
的访问权限。让
默认情况下,Ubuntu 20.04系统上的sudo
被配置为将完全权限扩展到sudo组中的任何用户。
您可以使用groups
命令查看新用户所在的组
默认情况下,新用户只在他们自己的组中,因为除了用户配置文件之外,adduser
还创建了这个组。用户和其自己的组共享相同的名称。要将用户添加到新组,您可以使用usermod
命令:
-aG
选项告诉usermod
将用户添加到列出的组。
请注意,usermod
命令本身需要sudo
权限。这意味着,如果您以root用户或已添加为sudo
组成员的其他用户身份登录,则只能将用户添加到sudo
组。在后一种情况下,您必须在此命令之前加上sudo
,如以下示例所示:
/etc/sudoers
中设置显式用户权限
除了将用户放在sudo组中,您还可以使用visudo
命令,该命令在系统的默认编辑器中打开一个名为/etc/sudoers
的配置文件,并显式地为每个用户指定权限。
使用visudo
是对/etc/sudoers
进行更改的唯一推荐方法,因为它会锁定文件以防止多个同时编辑,并在重新编译文件之前对其内容执行验证检查。这有助于防止您错误配置sudo
而无法修复问题的情况,因为您已经失去了sudo
权限。
如果您当前以root身份登录,请运行以下命令:
如果您以具有sudo
权限的非root用户身份登录,请使用sudo
前缀运行相同的命令:
传统上,visudo
在/etc/sudoers
编辑器中打开vi
,这可能会让没有经验的用户感到困惑。默认情况下,在新的Ubuntu安装中,visudo
将使用nano
文本编辑器,它提供了更方便和可访问的文本编辑体验。使用箭头键移动光标,然后搜索如下所示的行:
在这一行下面,添加以下突出显示的行。确保将newuser
更改为您要授予sudo
权限的用户配置文件的名称:
为每个应该被授予完全sudo
权限的用户添加一个新行。完成后,保存并关闭文件,方法是按CTRL + X
,然后按Y
,再按ENTER
确认。
现在,您的新用户可以使用管理权限执行命令。
以新用户身份登录后,您可以通过正常键入命令来以常规用户身份执行命令:
您可以使用管理权限执行相同的命令,方法是在命令前键入sudo
:
在执行此操作时,系统将提示您输入登录时所用的常规用户帐户的密码。
如果您不再需要用户,最好删除旧帐户。
您可以删除用户本身,而不删除他们的任何文件,通过运行以下命令作为根:
如果您以其他非root用户身份登录并拥有sudo
权限,则应使用以下内容:
相反,如果您想在删除用户时删除用户的主目录,则可以以root身份发出以下命令:
如果你是以一个拥有sudo
权限的非root用户的身份运行这个命令,那么你可以使用sudo
前缀运行相同的命令:
如果您以前为已删除的用户配置了sudo
权限,则可能需要再次删除相关行:
或者,如果您是具有sudo
权限的非root用户,请使用以下命令:
这将防止使用相同名称创建的新用户意外获得sudo
权限。