简介
您应该知道如何在全新的Linux服务器上执行的最基本任务之一是添加和删除用户。当您创建新系统时,默认情况下,您通常只获得超级用户 帐户。虽然以** 超级用户** 的身份运行会给您带来很大的权力和灵活性,但它也是危险的,可能具有破坏性。添加一个额外的非特权用户来执行常见任务几乎总是一个更好的主意。然后,您应该为系统上可能拥有的任何其他用户创建其他帐户。
您仍然可以通过名为sudo
的机制在需要时获取管理员权限。在本教程中,您将学习如何创建用户帐户、分配sudo
权限和删除用户。
如何添加用户
如果您以超级用户 用户身份登录,则可以随时通过键入以下命令来创建新用户:
1adduser sammy
如果您以被授予sudo
权限的非超级用户身份登录,如初始服务器设置guide,]中所示,您可以通过键入以下命令添加新用户:
1sudo adduser sammy
执行该命令后,您将看到一些输出,然后是一系列提示,要求您为新用户分配和确认密码。然后,系统将要求您输入有关新用户的任何其他信息。这完全是可选的,如果您不想在这些字段中输入信息,可以通过点击Enter
跳过。
最后,您将被要求确认您提供的信息是正确的。 输入Y
继续。整个过程看起来像这样:
1[secondary_label Output]
2Adding user `sammy' ...
3Adding new group `sammy' (1001) ...
4Adding new user `sammy' (1001) with group `sammy' ...
5Creating home directory `/home/sammy' ...
6Copying files from `/etc/skel' ...
7Enter new UNIX password:
8Retype new UNIX password:
9passwd: password updated successfully
10Changing the user information for sammy
11Enter the new value, or press ENTER for the default
12 Full Name []: Sammy the Shark
13 Room Number []: 123
14 Work Phone []: 555-555-5555
15 Home Phone []:
16 Other []:
17Is the information correct? [Y/n] y
adduser
命令为您的用户创建一个用户、一个组和一个主目录。您的新用户现在可以使用了!您现在可以使用您设置的密码登录。
<$>[注] 注意 :如果您需要新用户访问管理功能,请继续。 <$>
如何为用户授予SUDO权限
如果您的新用户需要以超级用户权限执行命令,则需要授予新用户对sudo
的访问权限。我们来看看解决这个问题的两种方法:将用户添加到预定义的sudo
user group,以及在sudo
‘S配置中按用户指定权限。
将新用户添加到SUDO组
默认情况下,Debian 8系统上的sudo
被配置为将完全权限授予sudo 组中的任何用户。
您可以使用groups
命令查看您的新用户所在的组:
1groups sammy
1[secondary_label Output]
2sammy : sammy
默认情况下,新用户仅在其自己的组中,该组在创建帐户时创建,并与用户共享名称。 要将用户添加到新组,请使用usermod
命令:
1usermod -aG sudo sammy
这里的-aG
选项告诉usermod
将该用户添加到列出的组中。
再次使用groups
命令确认您的用户现在是sudo
组的成员:
1[secondary_label Output]
2sammy : sammy sudo
现在,您的新用户可以使用管理权限执行命令。
以新用户身份登录后,您可以以常规用户身份通过正常键入命令来执行命令:
1ls ~
通过在命令前键入sudo
,您可以使用管理权限执行命令:
1sudo ls /root
命令前缀为sudo
时,系统会提示您输入密码。输入发出命令的用户帐户的密码,而不是根 用户的密码。
在/etc/sudoers中指定显式用户权限
除了将您的用户放到sudo 组中,您也可以使用visudo
命令,该命令会在系统的默认编辑器中打开一个名为/etc/sudoers
的配置文件,并针对每个用户显式指定权限。
<$>[警告]
编辑/etc/sudoers/
文件提供了更大的灵活性,但仅当您需要这种灵活性时才使用,因为在管理用户帐户时需要更多维护。
<$>
修改/etc/sudoers
时,唯一推荐的方法是使用visudo
,因为它会锁定文件,防止同时进行多次编辑,并在覆盖文件之前对其内容进行健全性检查。这有助于防止您错误配置sudo
并因失去sudo
权限而无法修复问题的情况。
如果您当前以根用户 身份登录,请键入:
1visudo
如果您使用具有sudo
权限的非超级用户登录,请键入以下内容:
1sudo visudo
传统上,visudo
会在vi
编辑器中打开/etc/sudoers
,这可能会让新手感到困惑。默认情况下,在新的Debian安装上,它应该使用Nan
,它提供了更熟悉的文本编辑体验。使用箭头键移动光标,并搜索如下所示的行:
1[label /etc/sudoers]
2root ALL=(ALL:ALL) ALL
在这一行下面,复制你在这里看到的格式,只修改单词root
来引用你想授予sudo权限的新用户:
1[label /etc/sudoers]
2root ALL=(ALL:ALL) ALL
3sammy ALL=(ALL:ALL) ALL
您应该为每个应该被授予完全sudo权限的用户添加如下所示的新行。完成后,您可以按CTRL-X
保存并关闭文件,然后按Y‘,然后按
Enter`确认。
如何删除用户
如果您不再需要用户,最好删除旧帐户。
您可以通过以根用户身份键入以下命令来删除用户本身,而不删除其任何文件:
1deluser sammy
如果您以另一个具有sudo权限的非超级用户身份登录,则可以改为键入:
1sudo deluser sammy
如果要在删除用户时删除用户的主目录,请以超级用户身份发出以下命令:
1deluser --remove-home sammy
如果您以具有sudo权限的非超级用户身份运行此命令,则应改为键入:
1sudo deluser --remove-home sammy
如果您之前已通过编辑/etc/sudoers
文件为您删除的用户配置了sudo权限,则应通过键入以下命令删除文件中的相关行:
1visudo
或者,如果您是具有sudo权限的非超级用户,请使用以下命令:
1sudo visudo
然后在与您的用户关联的文件中找到该行并将其删除。
1[secondary_label Output]
2root ALL=(ALL:ALL) ALL
3sammy ALL=(ALL:ALL) ALL # DELETE THIS LINE
这将防止使用相同名称创建的新用户意外地被授予sudo权限。
结论
现在,您应该已经很好地掌握了如何在Debian 8系统中添加和删除用户。有效的用户管理将允许您将用户分开,并仅为他们提供执行其工作所需的访问权限。
有关如何配置sudo
的更多信息,请查看我们的如何编辑sudoers file]指南。