Linux 用户管理:管理多用户系统的完整指南

在本教程中,我们将了解 Linux 用户管理。

Linux 用户管理表示如何管理用户帐户或组帐户。 它处理创建用户帐户、将用户添加到组、修改它以及删除帐户。

但是,这些都可以通过 GUI 轻松管理。 在这里,我们将学习允许我们执行用户管理的命令。 在开始之前,我们应该了解 Linux 用户管理中的常用术语。

基本术语

您可能知道这些术语,但让我们再次快速查看这些术语。 一些基本术语是:

  • 用户: 我们是有权访问系统资源的“用户”。 因此,用户是具有唯一标识号的对象,称为用户 ID(UID)。
  • 团体:具有访问相同资源权限的用户组称为组。 在 Linux 中,特定组中的用户可以访问分配给该组的所有资源。 组还有一个唯一的标识号,称为组 ID 或 GID。

用户类型

Linux 用户分为三类:

  • 超级用户 或 Root 用户:拥有所有权限的 Linux 系统管理员。 root 帐户属于超级用户。 root 用户不需要运行任何命令的权限。
  • 系统用户:由软件或应用程序创建的用户。 例如,我们安装了 Apache 系统中的Kafka,然后它会创建名为“的用户帐户Apache”。 这些被称为在安装任何应用程序时创建的系统用户。
  • 普通用户:由root用户创建的此类帐户称为普通用户。 例如,root 用户创建了一个名为 John、JournalDev 等的帐户。 名称可以是任何东西。 root 用户可以创建它,也可以删除该帐户。

用户配置文件

有 4 个配置文件,用于存储有关用户密码、组信息等信息。 这些配置文件位于 /etc 目录中。 让我们更多地讨论这个问题。

  • /etc/passwd:位于/etc 目录中的passwd 文件包含用户帐户信息。
  • /etc/shadow: 此文件以加密格式保存用户的密码,以及自密码上次更改以来的天数。
  • /etc/组: 它保存组帐户信息。 无论何时创建组,详细信息都存储在 /etc/group 文件中。 猫组文件
  • /etc/gshadow: 此文件类似于存储组帐户密码的 /etc/shadow 文件。 由于组帐户通常没有密码,您会在密码字段中看到一个星号。 猫 Gshadow 忠实

您可以使用 cat 命令检查所有文件,如上所示。

让我们执行一些 Linux 用户管理。

如何创建用户帐户?

Linux 用户管理的第一步是了解如何创建用户帐户。 早些时候,我们了解了与 Linux 用户管理相关的基本术语。 让我们进一步讨论如何添加或创建新的用户帐户。

我们可以使用 用户地址 或者 添加用户 命令后跟用户名。 用户名不应以大写字母开头。 让我们看看下面的命令:

sudo adduser [username] Or  sudo useradd [username] 
用户添加用户添加

您可以看到,在创建名为“vaishali”的用户时,它显示了一个错误。 因此,系统中不能存在同名用户。 此外,它会要求输入密码、全名、联系方式等详细信息,如下图所示:

用户详情用户详情

因此,新用户帐户已成功创建。 一些操作是在创建帐户时执行的,例如:

  1. 当我们创建一个新的用户帐户时,它会自动修改配置文件(上面讨论过)。
  2. 主目录分配给新用户。
  3. 主要有3个隐藏文件,.bash_logout, .bash_profile, .bashrc 复制到新用户的home目录下。
  4. 设置主目录的权限和所有权。
  5. 创建与用户帐户同名的组。

有关更多详细信息,请查看 useradd 命令的 Linux 官方文档。

将用户添加到多个组

前面我们讨论了如何创建用户。 Linux 用户管理的下一步是了解如何将用户添加到组。 我们了解到创建的组与用户帐户的名称相同。 如果,我们想将用户添加到已创建的多个组中怎么办。 “-G” 选项用于将用户添加到多个组。

每个组名用逗号分隔。 列出组名使用 groupmod 后跟 tab 键两次命令。 让我们看看下面的命令:

groupmod [press tab key twice] 
检查用户列表 2检查组列表

使用下面给出的以下命令将用户添加到您想要的组:

useradd -G group1,group2,group3 [username] 

与 Useradd 命令一起使用的选项

有一些与 useradd 命令一起使用的常用选项。 选项列表如下所述,说明它们的用途。 我们先来看看语法:

useradd [options] LOGIN OR useradd -D [options] 
选项 描述
-b, –base-dir, BASE_DIR 给出新帐户主目录的基目录。
-d, –home-dir HOME_DIR 表示新帐户的主目录
-h,-帮助 打印帮助信息
-m, –create-home 创建新的主目录,但如果它不存在
-p, –password 密码 指定用户账户的加密密码
-u, –uid UID 指定新用户帐户的用户 ID

这些是用于 useradd 命令的常用选项。 有关更多详细信息,请查看 Linux 官方文档。

删除用户帐户

Linux 用户管理的下一步是学习如何删除用户帐户。 我们将使用 userdel 命令删除帐户。

您可以选择使用以下命令使密码过期,以便用户无法登录。 让我们看看下面的命令:

sudo passwd -l 'username' 

现在使用 userdel 命令删除帐户,如下所示:

sudo userdel -r 'username' 

有关更多详细信息,请查看 userdel 命令的 Linux 官方文档。

怎么修改账号?

要创建帐户,我们使用 useradd 命令,而要修改已经存在的帐户,我们使用 usermod 命令。 此命令用于修改现有用户帐户的属性。 在执行Linux 用户管理时,需要知道如何修改用户的现有属性。

这些属性可以是更改用户的主目录、登录名、密码到期日期等。 假设您要更改用户帐户的当前名称。 让我们看看下面的命令:

usermod -d /home/[user_account_name] -m -l [new_name] [current_name] 
修改名称 1修改名称 1

当前用户帐号为linuxworld,已更改为linuxfordevices。 这里,-m 用于将主目录的内容移动到新位置,而 -l 选项通知用户名将从“旧用户”更改为“新用户”。 usermod 命令由 useradd 命令的选项组成。

要获得详细的知识,请查看 Linux 官方文档中的 Usermod 命令。

如何创建群组?

到目前为止,我们已经学习了如何创建、修改和删除用户帐户来执行 Linux 用户管理。 让我们学习如何创建一个组。 组是用户的集合。 该组的主要目的是对用户进行集体管理。 groupadd 命令用于向系统添加一个新组。

在创建新用户帐户时,会自动创建同名组。 多个用户可以是一个组的一部分,一个用户也可以是多个组的一部分。 这 groupadd 命令 用于创建组。 让我们看看下面的命令:

 groupadd [options] [group_name] 

更多详细信息,请查看 groupadd 命令的 Linux 官方文档。

怎么修改群?

之前,我们了解到 usermod 命令用于修改用户帐户。 同样,groupmod 命令用于修改指定组的定义。 它还包含 groupadd 命令的选项。 groupmod 命令用于修改组账号的组id、组名等。 让我们看看下面的命令:

groupmod [options] groupname 

有关更多详细信息,请查看 groupmod 命令的 Linux 官方文档。

如何删除一个组?

这里使用 groupdel 命令来删除组。 该命令修改系统文件并删除与该组相关的所有组信息。 在删除组之前,删除用户很重要。 删除用户的命令如上所述。 让我们看看下面的语法:

groupdel groupname 

有关更多详细信息,请查看 groupdel 命令的 Linux 官方文档。

结论

我们已经讨论了如何创建、修改和删除用户和组帐户以及如何执行 Linux 用户管理。 我们还讨论了配置文件以及与 Linux 用户管理相关的基本术语。 如果您有任何问题,请在评论部分告诉我们。 随时提供反馈。