您应该知道最基本任务之一是如何在新的Linux服务器上添加和删除用户。当您创建新系统时,您通常(例如在DigitalOcean Droplets上)默认情况下仅提供root帐户。
虽然以root用户身份运行会为您提供强大的功能和灵活性,但它也很危险并且具有破坏性。添加额外的,无特权的用户来执行常见任务几乎总是更好的主意。您还应该为系统上可能拥有的任何其他用户创建其他帐户。每个用户都应该拥有不同的帐户。
当您需要通过调用的机制时,您仍然可以获得管理员权限sudo
。在本指南中,我们将介绍如何创建用户帐户,分配sudo
权限和删除用户。
要完成本教程,你需要具备一台已经设置好可以使用sudo
命令的非root账号的Ubuntu服务器,并且已开启防火墙。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后在购买服务器。
如果您以root用户身份登录,则可以通过键入以下内容随时创建新用户:
adduser newuser
如果您以已获得sudo
权限的非root用户身份登录,您可以通过键入以下内容来添加新用户:
sudo adduser newuser
无论哪种方式,您都会被问到一系列问题。程序将是:
您的新用户现在可以使用了!您现在可以使用您设置的密码登录。
注意:如果您需要新用户可以访问管理功能,请继续。
如果您的新用户应该能够以root(管理)权限执行命令,则需要授予新用户访问权限sudo
。让我们来看看解决这个问题的两种方法:将用户添加到预定义的sudo
用户组,并在sudo
配置中指定基于每个用户的权限。
默认情况下,sudo
在Ubuntu 16.04系统上配置为将完全权限扩展到sudo组中的任何用户。
您可以使用以下groups
命令查看新用户所在的组:
groups newuser
Output
newuser : newuser
默认情况下,新用户仅在其自己的组中,该组在创建帐户时创建,并与用户共享名称。为了将用户添加到新组,我们可以使用以下usermod
命令:
usermod -aG sudo newuser
此处的选项-aG
告诉usermod
您将用户添加到列出的组中。
现在,您的新用户可以使用管理权限执行命令。
以新用户身份登录后,您可以像往常一样键入命令,以常规用户身份执行命令:
some_command
您可以通过在命令之前键入sudo
来执行具有管理权限的相同命令:
sudo some_command
系统将提示您输入您登录的常规用户帐户的密码。
作为将用户置于sudo组的替代方法,您可以使用该visudo
命令打开/etc/sudoers
在系统默认编辑器中调用的配置文件,并基于每个用户显式指定权限。
使用visudo
是唯一建议进行更改的方法/etc/sudoers
,因为它会锁定文件以防止多个同时编辑,并在覆盖文件之前对其内容执行完整性检查。这有助于防止配置错误sudo
和由于您丢失sudo
权限而导致并无法解决问题的情况。
如果您当前以root用户身份登录,请键入:
visudo
如果使用具有sudo
权限的非root用户登录,请键入:
sudo visudo
传统上,用visudo
命令在编辑器vi
中打开/etc/sudoers
,这可能会让没有经验的用户感到困惑。默认情况下,在新的Ubuntu安装中,它应该使用nano
,这提供了更熟悉的文本编辑体验。使用箭头键移动光标,并搜索如下所示的行:
root ALL=(ALL:ALL) ALL
在此行下方,复制您在此处看到的格式,仅更改单词“root”以引用您希望为其提供sudo权限的新用户:
root ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL
您应该为每个应该为其提供完全sudo权限的用户添加这样的新行。完成后,可以通过按Ctrl-X,然后按Y,然后按Enter确认来保存和关闭文件。
如果您不再需要用户,最好删除旧帐户。
您可以通过以root身份键入来删除用户本身,而不删除任何文件:
deluser newuser
如果您以另一个具有sudo权限的非root用户身份登录,则可以改为:
sudo deluser newuser
相反,如果要在删除用户时删除用户的主目录,则可以以root身份发出以下命令:
deluser --remove-home newuser
如果您以具有sudo权限的非root用户身份运行它,则应输入:
sudo deluser --remove-home newuser
如果您之前为删除的用户配置了sudo权限,则可能需要键入以下内容再次删除相关行:
visudo
如果您是具有sudo权限的非root用户,请使用此选项:
sudo visudo
root ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL # DELETE THIS LINE
这将阻止使用相同名称创建的新用户被意外地赋予sudo权限。
您现在应该可以很好地处理如何在Ubuntu 16.04系统中添加和删除用户。有效的用户管理将允许您分离用户并仅为他们提供完成工作所需的访问权限。
想要了解更多关于添加和删除用户的相关教程,请前往腾讯云+社区学习更多知识。
参考文献:《How to Add and Delete Users on Ubuntu 16.04》
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。