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

在本教程中,我们将学习 Linux 用户管理。

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

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

目录

基本术语

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

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

用户类型

Linux 中有三种类型的用户:

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

用户配置文件

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

  • /etc/passwd:位于 /etc 目录中的 passwd 文件保存用户帐户信息。
  • /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,它们被复制到新用户的主目录中。
  4. 设置主目录的权限和所有权。
  5. 创建与用户帐户同名的组。

检查 Linux useradd 命令官方文档 更多细节。

将用户添加到多个组

前面我们讨论了如何创建用户。 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'

查看 Linux 官方 userdel 命令文档 更多细节。

如何修改账户?

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

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

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

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

要了解详细知识,请查看 Usermod 命令的 Linux 官方文档.

如何创建群组?

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

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

 groupadd [options] [group_name]

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

如何修改组?

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

groupmod [options] groupname

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

如何删除群组?

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

groupdel groupname

有关更多详细信息,请查看 linux groupdel命令官方文档.

结论

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