在Ubuntu 18.04上添加和删除用户的方法

简介: 在Ubuntu 18.04上添加和删除用户的方法

简介

在 Linux 系统上添加和删除用户是最重要的系统管理任务之一,需要熟悉这些操作。在创建新系统时,通常只能默认访问 root 帐户。

虽然以 root 用户身份运行可以完全控制系统和用户,但也存在危险和可能的破坏性。对于常见的系统管理任务,最好的做法是添加一个非特权用户,并在没有 root 权限的情况下执行这些任务。您还可以为系统上的其他用户创建额外的非特权帐户。系统上的每个用户都应该有自己单独的帐户。

对于需要管理员权限的任务,在 Ubuntu 系统上安装了一个名为 sudo 的工具。简而言之,sudo 允许您以另一个用户的身份运行命令,包括具有管理员权限的用户。在本指南中,您将学习如何创建用户帐户、分配 sudo 权限和删除用户。

先决条件

要完成本教程,您需要访问运行 Ubuntu 18.04 的服务器。确保您具有对服务器的 root 访问权限并启用了防火墙。要设置这一点,请按照我们的 Ubuntu 18.04 初始服务器设置指南进行操作。

添加用户

如果您以 root 用户身份登录,可以随时通过运行以下命令创建新用户:

adduser newuser

如果您以获得 sudo 权限的非 root 用户身份登录,可以使用以下命令添加新用户:

sudo adduser newuser

无论哪种方式,您都需要回答一系列问题:

  • 为新用户分配并确认密码。
  • 输入有关新用户的任何其他信息。这是可选的,如果您不希望使用这些字段,可以按 ENTER 键跳过。
  • 最后,您将被要求确认您提供的信息是否正确。按 Y 继续。

您的新用户现在已准备就绪,并可以使用您输入的密码登录。

如果您需要让新用户具有管理员权限,请继续下一节。

授予用户 sudo 权限

如果您的新用户应该能够以 root(管理员)权限执行命令,则需要让新用户访问 sudo。让我们来看看完成此任务的两种方法:首先是将用户添加到预定义的 sudo 用户组 中,其次是在 sudo 的配置中按用户指定权限。

将新用户添加到 Sudo 组

在 Ubuntu 18.04 系统上,默认情况下,sudo 配置为向 sudo 组中的任何用户授予完全权限。

您可以使用 groups 命令查看您的新用户属于哪些组:

groups newuser
newuser : newuser

默认情况下,新用户只属于自己的组,因为 adduser 会创建此组以及用户配置文件。用户和其自己的组共享相同的名称。为了将用户添加到新组,您可以使用 usermod 命令:

usermod -aG sudo newuser

-aG 选项告诉 usermod 将用户添加到列出的组中。

请注意,usermod 命令本身需要 sudo 权限。这意味着只有以 root 用户身份登录或已添加为 sudo 组成员的其他用户才能将用户添加到 sudo 组。在后一种情况下,您将不得不在此命令之前加上 sudo,就像这个例子中一样:

sudo usermod -aG sudo newuser

/etc/sudoers 中指定显式用户权限

作为将用户放入 sudo 组的替代方法,您可以使用 visudo 命令,在系统的默认编辑器中打开名为 /etc/sudoers 的配置文件,并明确指定每个用户的权限。

使用 visudo 是对 /etc/sudoers 进行更改的唯一推荐方法,因为它锁定文件,防止多个同时编辑,并在覆盖文件之前对其内容进行验证检查。这有助于防止因为失去 sudo 权限而无法解决问题的情况。

如果您当前以 root 用户身份登录,请运行以下命令:

visudo

如果您以获得 sudo 权限的非 root 用户身份登录,请使用 sudo 前缀运行相同的命令:

sudo visudo

传统上,visudo 会在 vi 编辑器中打开 /etc/sudoers,这对于经验不足的用户来说可能会令人困惑。在新的 Ubuntu 安装中,默认情况下,visudo 将使用 nano 文本编辑器,提供更方便和易于访问的文本编辑体验。使用箭头键移动光标,并搜索类似以下内容的行:

root    ALL=(ALL:ALL) ALL

在此行下面添加以下突出显示的行。确保将 newuser 更改为您要授予 sudo 权限的用户配置文件的名称:

root    ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL

为每个应被授予完整 sudo 权限的用户添加类似的新行。完成后,按 CTRL + X,然后按 Y,最后按 ENTER 保存并关闭文件。

测试用户的 Sudo 权限

现在你的新用户可以以管理员权限执行命令了。

当以新用户身份登录时,你可以像平常一样输入命令以普通用户的身份执行:

some_command

你可以在命令前加上 sudo 以管理员权限执行相同的命令:

sudo some_command

这样做时,系统会提示你输入以普通用户账户登录时的密码。

删除用户

如果你不再需要某个用户,最好的做法是删除该用户的账户。

你可以以 root 身份运行以下命令来删除用户本身,而不删除其文件:

deluser newuser

如果你以另一个具有 sudo 权限的非 root 用户登录,你应该使用以下命令:

sudo deluser newuser

如果你想在删除用户时同时删除用户的主目录,你可以以 root 身份运行以下命令:

deluser --remove-home newuser

如果你以具有 sudo 权限的非 root 用户身份运行,你应该使用带有 sudo 前缀的相同命令:

sudo deluser --remove-home newuser

如果你之前为删除的用户配置了 sudo 权限,你可能需要再次删除相关行:

visudo

或者,如果你是具有 sudo 权限的非 root 用户,你可以使用以下命令:

sudo visudo
root    ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL   # 删除此行

这将防止以相同名称创建的新用户意外获得 sudo 权限。

结论

现在你应该对如何在 Ubuntu 18.04 系统中添加和删除用户有了相当好的掌握。有效的用户管理将允许你分隔用户,并仅赋予他们完成工作所需的访问权限。

要了解有关如何配置 sudo 的更多信息,请查看我们的有关如何编辑 sudoers 文件的指南。


目录
相关文章
|
27天前
|
消息中间件 Ubuntu Java
在Ubuntu 18.04上安装Apache Kafka的方法
在Ubuntu 18.04上安装Apache Kafka的方法
65 0
|
5天前
|
Ubuntu 应用服务中间件 网络安全
Ubuntu 22.04环境下为Odoo开启80端口的方法
通过以上步骤,你应该能够在Ubuntu 22.04环境下为Odoo开启80端口。访问你的域名时,Nginx会将请求代理到Odoo,允许你通过80端口访问Odoo应用。
13 1
|
27天前
|
存储 Ubuntu Go
在Ubuntu 16.04上安装Go 1.6的方法
在Ubuntu 16.04上安装Go 1.6的方法
30 1
|
27天前
|
存储 Ubuntu Go
在Ubuntu 18.04上安装Go的方法
在Ubuntu 18.04上安装Go的方法
18 1
|
27天前
|
存储 Ubuntu Linux
在Ubuntu 14.04上安装Go 1.6的方法
在Ubuntu 14.04上安装Go 1.6的方法
36 1
|
27天前
|
Ubuntu 关系型数据库 数据库
在Ubuntu 18.04上安装和使用PostgreSQL的方法
在Ubuntu 18.04上安装和使用PostgreSQL的方法
32 1
|
27天前
|
Ubuntu 关系型数据库 Linux
在Ubuntu 14.04上安装和使用PostgreSQL的方法
在Ubuntu 14.04上安装和使用PostgreSQL的方法
13 1
|
23天前
|
Ubuntu Linux 测试技术
下载ISO镜像的方法 Debian、Red Hat 、CentOS、Ubuntu、Kali Linux🌐
Debian、Red Hat、CentOS、Ubuntu与Kali Linux均为知名Linux发行版。下载Debian须访问官网并按计算机架构选ISO文件。Red Hat下载通常需订阅账户,可从官网登录后获取。CentOS可从官网或镜像站点下载,注意CentOS 8已停更。Ubuntu下载简便,官网直接选取版本及架构即可。Kali Linux专为安全测试设计,官网提供直接下载ISO镜像服务。
152 0
|
27天前
|
存储 Ubuntu 开发工具
在Ubuntu 18.04上安装Git的方法
在Ubuntu 18.04上安装Git的方法
25 0
|
27天前
|
存储 Ubuntu 开发工具
在Ubuntu 16.04上安装Git的方法
在Ubuntu 16.04上安装Git的方法
14 0