Skip to main content

如何使用“useradd”命令在Linux中创建用户

Linux用户基础 [LinuxCast视频教程] (可能 2025)

Linux用户基础 [LinuxCast视频教程] (可能 2025)
Anonim

本指南介绍如何使用命令行在Linux中创建用户。虽然许多桌面Linux发行版提供了用于创建用户的图形工具,但最好从命令行学习如何执行此操作,以便您可以将技能从一个发行版转移到另一个发行版而无需学习新的用户界面。

如何创建用户

让我们从创建一个简单的用户开始。

以下命令将向系统添加名为test的新用户:

sudo useradd test

运行此命令时将发生的情况取决于位于的配置文件的内容 在/ etc /默认/ useradd的.

查看内容 在/ etc /默认/ useradd的 运行以下命令:

sudo nano / etc / default / useradd

配置文件将设置一个默认shell,在Ubuntu中是bin / sh。所有其他选项都已注释掉。

注释掉的选项允许您设置默认主文件夹,组,密码在帐户被禁用之前到期后的天数以及默认的到期日期。

从上面的信息中收集的重要一点是,在没有任何开关的情况下运行useradd命令可能会在不同的发行版上产生不同的结果,这与设置中的设置有关。 在/ etc /默认/ useradd的 文件。

除了 在/ etc /默认/ useradd的 文件,还有一个名为的文件 /etc/login.defs中 这将在后面的指南中讨论。

每个发行版都没有安装sudo。如果未安装,则需要登录具有创建用户的适当权限的帐户。

如何使用主目录创建用户

前面的示例相当简单,但用户可能已经或可能没有根据设置文件分配主目录。

要强制创建主目录以使用以下命令:

useradd -m test

上面的命令创建了一个 /家/测试 用户测试的文件夹。

如何使用不同的主目录创建用户

如果您希望用户将主文件夹放在默认的其他位置,则可以使用-d开关。

sudo useradd -m -d / test test

上面的命令将在根文件夹下创建一个名为test for user test的文件夹。

在-m开关中,可能无法创建文件夹。它取决于/etc/login.defs中的设置。

为了在不指定-m开关的情况下使其工作,请编辑该文件 /etc/login.defs中 并在文件的底部添加以下行:

CREATE_HOME是的

如何使用Linux更改用户密码

现在您已经创建了具有主文件夹的用户,您需要更改用户的密码。

要设置用户密码,您需要使用以下命令:

密码测试

上面的命令将允许您设置测试用户的密码。系统将提示您输入要使用的密码。

如何切换用户

您可以通过在终端窗口中键入以下内容来测试新用户的帐户:

su - 测试

上面的命令将用户切换到测试帐户,并假设您创建了一个主文件夹,您将被放置在该用户的主文件夹中。

创建具有到期日期的用户

如果您在办公室工作并且您有一位新的承包商,他将在短时间内到您的办公室,那么您将需要在其用户帐户上设置到期日期。

同样,如果您有家人入住,那么您可以为该家庭成员创建一个在他们离开后过期的用户帐户。

要在创建用户时设置到期日期,请使用以下命令:

useradd -d / home / test -e 2016-02-05 test

日期必须以YYYY-MM-DD格式指定,其中YYYY是年份,MM是月份编号,DD是日期编号。

如何创建用户并将其分配给组

如果您有新用户加入公司,那么您可能希望为该用户分配特定组,以便他们可以访问与其团队成员相同的文件和文件夹。

例如,假设你有一个名叫John的人,他正在加入会计师职位。

以下命令会将john添加到帐户组。

useradd -m john -G accounts

在Linux中调整登录默认值

文件 /etc/login.defs中 是一个配置文件,它提供登录活动的默认行为。

此文件中有一些关键设置。打开 /etc/login.defs中 file输入以下命令:

sudo nano /etc/login.defs

login.defs文件包含您可能想要更改的以下设置:

  • PASS_MAX_DAYS - 密码到期前多久。
  • PASS_MIN_DAYS - 密码更改频率。
  • PASS_WARN_AGE - 密码过期前的警告天数。
  • LOGIN_RETRIES - 失败前的登录尝试次数。
  • 登录超时 - 登录超时前有多长时间。
  • DEFAULT_HOME - 如果不存在主文件夹,用户是否可以登录。

这些是默认选项,可以在创建新用户时覆盖它们。

如何在创建用户时指定登录密码到期时间

您可以设置密码到期日期,登录重试次数以及创建用户时的超时时间。

以下示例说明如何创建具有密码警告的用户,密码过期前的最大天数以及设置的登录重试次数。

sudo useradd test5 -m -K PASS_MAX_DAYS = 5 -K PASS_WARN_AGE = 3 -K LOGIN_RETRIES = 1

强制创建没有主文件夹的用户

如果login.defs文件具有该选项 CREATE_HOME是的然后在创建用户时设置将自动创建主文件夹。

要创建没有主文件夹的用户而不管设置如何,请使用以下命令:

useradd -M测试

令人困惑的是-m代表创建家庭而-M代表不创造家庭。

创建用户时指定用户的全名

作为用户创建策略的一部分,您可以选择执行类似第一个首字母的操作,然后选择姓氏。例如,“John Smith”的用户名将是“jsmith”。

在查找有关用户的详细信息时,您可能无法区分John Smith和Jenny Smith。

您可以在创建帐户时添加注释,以便更容易找到用户的真实姓名。

以下命令显示了如何执行此操作:

useradd -m jsmith -c“john smith”

分析/ etc / passwd文件

创建用户时,该用户的详细信息将添加到 / etc / passwd文件 文件。

要查看特定用户的详细信息,可以使用grep命令,如下所示:

grep john / etc / passwd

上面的命令将返回有关john作为用户名一部分的所有用户的详细信息。

在/ etc / passuword file包含有关每个用户的以冒号分隔的字段列表。

字段如下:

  • 用户名;
  • 加密密码(你显然看不到);
  • 用户身份;
  • 用户的组ID;
  • 用户的全名;
  • 用户的主目录;
  • 登录shell。