将用户添加到Linux计算机是一项基本的管理任务,有几种方法可以实现这一点。每种创建用户的方法都有优点和缺点,我们将向你介绍三种不同的用户创建方法。
Linux计算机为什么需要用户一台没有用户的个人计算机用处并不大。Linux支持多个用户。无论他们是同时登录并共享计算机的电源,还是在独占使用计算机时单独登录,每个人都需要一个唯一的用户帐户。
用户帐户封装该用户的工作并提供隐私。它还允许将控制和管理应用于帐户。通过更改用户帐户的属性(如他们所属的组),不同的用户可以根据他们的需要或他们的角色或功能具有不同的功能。
无论你是与家庭成员共享计算机,还是管理组织的多用户安装,创建用户帐户都是一项基本的管理技能。
使用useradd命令创建新的Linux用户useradd命令是用于添加用户的最低级别命令。其他命令充当useradd命令的更友好的前端。这增加了一些便利性,并使过程变得更容易,但其他命令无法实现使用useradd和passwd命令无法实现的事情。
useradd命令有许多选项,下面显示了创建典型新用户所需的选项。不用说,你必须使用sudo来添加用户。
sudo useradd -s /bin/bash -m -c "Mary Quinn" -Gsambashare maryq该命令由以下部分组成:
sudo:我们需要管理员权限才能允许新用户访问计算机。useradd:useradd命令。-s /bin/bash:shell选项,这将为此新用户设置默认shell。-m:生成主目录选项,这将在“/home/”目录中创建一个与新用户帐户名同名的目录。-c “Mary Quinn”:新用户的全名,这是可选的。-Gsambashare:附加组选项,这是可选的。新用户将被添加到与其帐户名同名的组中。-G选项(注意,大写“G”)将用户添加到增补组。组必须已经存在。我们还将使新用户成为“sambashare”组的成员。maryq:新用户帐户的名称,这必须是唯一的,不能已被其他用户使用。这将创建新的用户帐户,创建其主目录,并用一些默认的隐藏文件填充它。我们可以这样查看他们的主目录:
sudo ls -ahl /home/maryq我们的新用户还无法登录,因为我们尚未为他们创建密码。可以使用其-p(密码)选项将密码传递给useradd命令,但这被认为是不好的做法。此外,你必须以加密形式提供密码,因此它并不像听起来那么简单。
使用passwd命令为新帐户设置密码更容易,也更安全。
sudo passwd maryq系统会提示你输入密码,然后要求你再次输入密码以验证它。必须将此密码安全地传递给新用户。建议在他们登录时提示他们更改密码。这意味着他们可以选择自己的密码,其他人不会知道。
sudo passwd --expire maryq我们可以查看新的用户帐户,并通过查看“/etc/passwd”文件将其与现有帐户进行比较。
grep -E "dave|maryq" /etc/passwd按顺序,冒号“:”分隔的字段为:
maryq:用户帐户的名称。x:此字段中的“x”表示用户帐户密码已加密并保存在“/etc/shadow”文件中。1001:用户帐户ID。1001:此用户帐户的默认组的ID。Mary Quinn:这是GECOS领域。它可以保存一组逗号“,”分隔的额外信息值。我们添加的只是用户的全名。/home/maryq:此帐户的主目录的路径。/bin/bash:该帐户的默认shell的路径。当我们的新用户首次登录时,他们将使用你为他们创建的密码。
因为我们将他的密码设置为“过期”条件,所以会提示他更改密码。他必须重新输入现有密码。
然后提示他输入新密码。
一旦他键入新密码并点击“回车”,就会要求他重新输入密码以验证它。
最后,他们登录了。从现在开始,他们必须使用新密码登录。
执行一些内部管理,并在它们的主目录中为它们创建通常的“文档”、“下载”和其他目录。
GECOS字段最多可以包含五条以逗号分隔的信息。这些很少使用。如果填充了任何内容,则通常是第一个,它保存该帐户所有者的真实名称。
这些字段包括:
此用户的真实名称。此用户的房间号。他们的工作电话。他们的家庭电话。任何其他信息。如果我们想在创建帐户时提供所有这些,我们可以这样做,如下所示:
sudo useradd -s /bin/bash -m -c "Mary Quinn,Operations 1,555-6325,555-5412,Team Leader" -Gsambashare maryq我们可以使用grep来查看此信息是否存储在“/etc/passwd”文件中。
grep maryq /etc/passwd如果在创建帐户时没有这些信息,则可以在以后使用chfn命令添加或更改这些信息。
该信息由finger和pinky等命令使用。
finger maryq使用adduser命令创建新用户adduser命令将帐户的创建、其主目录、设置密码和捕获GECOS字段信息包装到一个交互式会话中。
adduser命令已经存在于我们的Ubuntu和Fedora测试机器上,但必须安装在Manjaro上。它位于Arch User Repository中,因此你需要使用诸如yay的AUR助手来安装它。
yay adduser要启动该过程,请使用sudo并提供要添加的用户帐户的名称:
sudo adduser maryq将创建用户帐户的默认组,并添加用户帐户,并将该组作为其默认组。将创建主目录,并将隐藏的配置文件复制到其中。
系统将提示你提供密码。
当你提供密码并单击“回车”时,系统会提示你重新输入密码以进行验证。
依次要求你提供可以进入GECOS字段的每一条信息。
提供一些信息,然后按“回车”移动到下一个字段,或者只按“回车”跳过字段。
最后,询问你提供的信息是否正确。按“Y”键,然后按“回车”完成该过程。
记住将新帐户的密码设置为“过期”,以便新用户在首次登录时需要更改密码。
sudo password --expire maryq使用GNOME用户设置(GUI选项)创建新用户要在GNOME桌面环境中创建新用户,请单击GNOME面板右侧的电源、音量和网络图标附近,打开系统菜单。
单击“设置”菜单项。
设置应用程序将打开。单击侧栏中的“用户”条目,然后单击“用户”窗格中的“解锁”按钮。
你需要输入密码。
将出现绿色的“添加用户”按钮。
单击此按钮。“添加用户”对话框出现。它包含一个捕获新用户详细信息的表单。
用新用户的详细信息填写表单。如果希望他们能够使用sudo,请单击“管理员”按钮。
你可以立即设置他们的密码,也可以让他们在首次登录时选择密码。如果设置密码,则必须记住打开终端窗口,并使用passwd命令将其设置为“过期”状态。这将迫使他们在首次登录时设置自己的密码。
当你试图使用GUI来完成新用户的创建时,必须转到终端是有点痛苦的。
如果单击“允许用户在下次登录时设置自己的密码”单选按钮,则用户在尝试登录时会被提示输入新密码。但这里的缺点是,第一个尝试使用新帐户的人可以设置密码。因此,任何知道帐户已创建,并想控制真正的新用户尝试登录的人都可以接管该帐户。
这两种情况都不理想。
完成填写并进行选择后,单击绿色的“添加”按钮。
我们选择了“允许用户在下次登录时设置自己的密码”选项。当用户尝试登录时,系统会提示他输入新密码。但是,与我们前面看到的顺序不同,他们不会被提示输入他的当前密码,因为他没有密码。
正如你所期望的,他必须再次输入它来验证它。
我应该使用哪种添加用户的方法不确定我们概述的哪种用户创建技术最适合你吗?好的,useradd命令提供了细粒度控制,但在命令行上有许多工作要做。
adduser命令使生活变得更容易,但不允许你将新用户输入到其他组中。
GNOME中的GUI方法有缺点,无论你选择哪个密码单选按钮。
在大多数非正式或国内情况下,adduser命令可能会为你提供功能和性能之间的最佳平衡。如果需要将新用户添加到其他组中,则可以在创建新用户后使用usermod命令执行该操作。