如何向 Linux 添加用户
Linux 为您提供了最常用的命令“useradd”或“adduser”。它允许您向 Linux 系统添加或创建用户以及一些可能与其他用户不同的属性。这些用户可以访问某些文件或目录,而某些用户可能不依赖于他们拥有的访问权限。每当添加或创建用户时,都会根据要求向该用户授予访问权限。
“useradd”命令可能因不同的 Linux 发行版而异,因此建议您在 Linux 中创建新用户帐户之前正确阅读文档。我们重点介绍如何在 Linux 系统中添加或创建新用户的方法。
每当您在终端上运行“adduser”命令时,它将执行以下任务。
每当您创建新用户帐户时,您都可以更改上述 Linux 文件 – /etc/passwd、/etc/shadow、/etc/group 和 /etc/gshadow。
每当您创建新用户时,您都可以创建并填充用户的主目录。
您可以为新用户设置主目录的权限和所有权。
“adduser”命令的语法如下
在 Linux 中添加新用户
要添加或创建新用户,请使用“adduser”或“useradd”命令以及用户名。用户名可以是登录Linux系统的登录名。您只能添加一个用户,并且必须与系统上现有的另一用户不同。
假设您要添加名为“Sammy”的用户,然后在终端上运行以下命令。
如果使用“useradd”命令,则会在锁定状态下创建用户,并且要解锁该用户帐户,请使用“passwd”命令为该帐户设置密码,如下所示。
创建新用户后,您将看到“/etc/passwd”文件中自动添加了一个新条目,它将以独特的格式存储用户的信息,如下所示。
上述信息将指定以下字段,并按相应顺序用冒号分隔。
用户名:指定登录系统的用户登录名,长度最多为 32 个字符。
密码:此用户凭据以加密格式存储在 /etc/shadow 文件中。
用户 ID (UID):每个用户都有一个称为用户识别号的用户 ID。
组 ID (GID):代表组标识号,与用户的其他详细信息一起存储在 /etc/group 文件中。
用户信息(可选)将存储额外信息,例如完整的用户名等。
主目录:它有助于定义用户主目录的绝对位置。
Shell 指定用户 shell 的绝对位置,即/bin/bash。
创建具有不同主目录的用户
每当您运行“adduser”命令时,它都会在 /home 目录下创建用户的主目录以及用户名。如果要更改新用户的主目录位置,请使用“-d”选项和“adduser”命令。
以下命令将创建用户“nick”,主目录为“/data/nick.txt”。 ”
如果我们检查/etc/passwd文件的内容,您会发现有关用户昵称的以下信息。
nick:x:505:505::/data/nick:/bin/bash
创建具有特定用户 ID 的用户
每个用户都有一个唯一的识别码(UID)。在Linux中创建新用户时,系统默认会分配数字500、501、502等。但是,如果您想为新创建的用户分配特定的用户 ID,请使用“-u”选项和“adduser”命令,
在这里,我们添加一个用户“diva”并分配一个新的 UID 为“1122”,如下所示。
要检查有关用户的添加详细信息,请检查“/etc/passwd”文件的内容,您将看到以下用户详细信息。
diva:x:1122:1122::/home/diva:/bin/bash
创建具有特定组 ID 的用户
Linux 系统上的每个用户都有一个组标识系统。您可以使用“-g”选项和“useradd”命令来创建具有特定组ID的用户。在下面的例子中;我们使用“-u”和“-g”选项添加一个名为“geet”的用户,该用户具有特定的GID和UID。
要检查系统中新添加用户的详细信息,请检查 /etc/passwd 文件的内容,如下所示。
geet:x:1000:500::/home/geet:/bin/bash
将用户添加到多个组
如果您希望将新用户添加到多个组,请提及“-G”选项以及“adduser”命令。您可以使用逗号分隔各个组,不带任何空格,如下所示。
您可以使用“id”命令检查分配给用户的多个组,如下所示。
uid=1001(downey) gid=1001(downey)
groups=1001(downey),500(admins),501(webadmin),502(developers)
context=root:system_r:unconfined_t:SystemLow-SystemHigh
添加没有主目录的用户
假设由于安全用户的原因,您不想为新添加的用户分配主目录,而不是使用“-M”选项和“adduser”命令。在这里,我们创建一个新用户“Nancy”,但没有主目录。
如果要检查创建的用户是否没有主目录,请使用下面提到的“ls”命令,如下所示。
Is: cannot access/home/nancy: No such file or directory
创建具有帐户到期日期的用户
每当我们使用“adduser”命令添加用户时,该帐户永远不会过期,因为过期日期为零。但是您可以使用“-e”选项和“useradd”命令添加用户的到期日期,如下所示。
它将在“YYYY-MM-DD”格式指定的时间创建一个临时帐户。
要检查用户的帐户年龄和密码,您可以对“Nancy”用户使用“chage”命令。
创建具有密码到期日期的用户
如果要定义密码过期后的天数,可以将“-f”选项与“useradd”命令一起使用。当密码过期时,“0”值对用户将保持无效状态。默认情况下,密码过期值为“-1”,这意味着它不会过期。但是,如果您想创建一个具有密码到期日期的临时用户,请使用“-f”选项和“useradd”命令,如下所示。
添加具有自定义评论的用户
如果要在 /etc/passwd 文件中的用户详细信息中添加一些注释,请使用“-c”选项和“useradd”命令。将注释添加为单行,不带任何空格,如下所示。
在这里,我们添加用户“mathew”以及全名“mathew stellar”。
您可以在 /etc/passwd 文件中看到添加的详细信息,如下所示。
mathew:x:1006:1008:Mathew Stellarr:/home/mathew:/bin/sh
更改用户登录外壳
每当我们添加新用户时,他们都不必使用登录 shell 执行任何操作。但是,通常需要为用户分配不同的登录 shell。 Linux 允许使用“-s”选项和“useradd”命令为每个用户分配不同的登录 shell。
这里我们添加用户“dash”,但不带登录 shell (/sbin/nologin) shell。
您可以在/etc/passwd 文件下查看详细信息。
dash:x:1002:1002::/home/dash:/sbin/nologin
添加具有特定主目录、默认 Shell 和自定义注释的用户
我们使用以下命令添加新用户“raj”,其主目录为“/var/www/xyz”,默认 shell 为“/bin/bash”,并添加一些有关该用户的额外信息。
在上面的示例中,-m 和 -d 选项用于创建具有指定主目录的新用户,-s 选项将为该用户设置默认 shell,-c 选项将为用户。查看/etc/passwd文件中添加的信息。
结论
Linux 系统有一种不同的方式来添加新用户以及存储在 Linux 系统上的文件中的相关详细信息。您可以使用 Linux 发行版的“useradd”或“adduser”命令向系统添加新用户。此外,您将可以使用各种选项以及命令来添加其他详细信息,以更改所添加用户的默认设置。您可以阅读本文并了解“useradd”命令及其各种选项的详细使用方法。