Linux adduser / addgroup初学者命令教程(7个示例)

作为Linux系统管理员,您必须执行的基本任务之一是为新用户创建帐户并管理用户组。当然...

Linux adduser / addgroup初学者命令教程(7个示例)

作为Linux系统管理员,您必须执行的基本任务之一是为新用户创建帐户并管理用户组。 当然,有一些命令行实用程序可以让你做到这一点,在本教程中,我们将讨论两个这样的命令的基础知识: adduseraddgroup

在我们继续前进之前,值得一提的是本文中的所有示例都已在Ubuntu 16.04 LTS上进行了测试。 另外,本文主要讨论adduser,但addgroup在大多数情况下也以相同的方式工作。

Linux adduser / addgroup命令

顾名思义,这些工具可让您将新用户和组添加到系统中。 以下是这些命令的基本语法:

adduser [options or flags] user

addgroup [options or flags] group

以下是手册页介绍这些工具的方式:

       adduser  and  addgroup  add users and groups to the system according to
       command    line    options    and    configuration    information    in
       /etc/adduser.conf.   They  are  friendlier  front ends to the low level
       tools like useradd, groupadd and usermod programs, by default  choosing
       Debian  policy conformant UID and GID values, creating a home directory
       with skeletal configuration, running a custom script,  and  other  fea?
       tures.

以下Q&A样式的示例应该为您提供有关这些实用程序如何工作的好主意。

Q1。 如何使用adduser和addgroup命令?

添加用户或组相当简单 - 您只需将新用户(或组)的名称传递给该命令即可。 例如:

adduser [user-name]

不用说,您需要成为root用户,或者需要升级权限才能使此进程发挥作用。 以下屏幕截图显示了通过此工具添加的新用户:

如何使用adduser和addgroup命令

所以你可以看到,你会被问到几个问题,你可以选择回答,然后按ENTER键,这样系统会自己选择默认值。

用adduser命令添加一个Linux用户

添加完成后,您可以通过以下方式使用su命令切换到新用户:

苏指挥

Q2。 如何使adduser / addgroup使用不同的conf文件?

正如开头已经提到的那样,默认情况下,adduser / addgroup命令读取/etc/adduser.conf文件以执行其操作。 但是,如果由于某种原因,您希望他们读取驻留在自定义位置的自定义文件,则可以使用--conf选项传递该信息。

adduser --conf [new-conf-file-name-path]

Q3。 系统和普通用户/组之间有什么区别?

如果您查看这些实用程序的手册页文档,您会发现可以使用adduser添加普通用户或系统用户。

Add a normal user
       If  called  with  one  non-option  argument and without the --system or
       --group options, adduser will add a normal user.
Add a system user
       If called with one non-option argument and the --system option, adduser
       will add a system user.

首先了解两者之间的差异很重要。

从技术上说,这些用户之间没有区别,您应该在创建帐户时创建系统用户以运行守护程序或服务等系统软件 - 基本上,如果帐户不需要交互式使用。 总而言之,这种隔离有助于保持用户和软件帐户的分离。

Q4。 如何防止用户登录?

如果您想禁用用户帐户,意味着阻止用户登录,请使用--disabled-login选项。

adduser --disabled-login [OPTIONS] user

此选项将密码设置为!,这意味着“登录被取消激活,用户将无法登录。”

请记住,这只会阻止用户登录 - 您仍然可以使用su命令切换到其他帐户。

Q5。 如何强制adduser创建自定义主目录?

如前所述,adduser命令从配置文件中选择信息,这些信息包括用作用户主目录的目录。 但是,如果你愿意,你可以使用--home选项自己指定。

adduser --home [dire-name-path] user

--home DIR
              Use  DIR  as  the user's home directory, rather than the default
              specified by the configuration file.  If the directory does  not
              exist, it is created and skeleton files are copied.

还有其他类似的标志。 例如,-- no-create-home选项告诉工具不创建主目录,即使它不存在。 然后,您可以使用shell来强制adduser将不同的shell用作用户的登录shell,而不是使用配置文件指定的缺省值。

Q6。 如何使用自定义ID创建用户或组?

如果您愿意,您可以强制adduser和addgroup分别在创建用户和组时分配自定义用户和组ID。 这可以使用--uid--gid选项来实现。

--uid ID
              Force the new userid to be the given number.  adduser will  fail
              if the userid is already taken.
--gid ID
              When creating a group, this option forces the new groupid to  be
              the  given  number.   When creating a user, this option will put
              the user in that group.

Q7。 如何使adduser / addgroup发出最小或最大的信息?

要使这些工具发出最低限度的信息,请使用--quiet命令行选项。 如果你想让这些工具变得冗长,可以使用--debug选项。 下面的截图提供了一个关于两者之间的区别的清晰思路:

Adduser命令冗长

结论

adduser和addgroup命令都有一个不错的学习曲线,但这并不意味着它们很难理解。 事实上,你可以从学习帮助你完成工作的选项开始,逐渐理解其他人。 我们已经在这里解释了一些选项。 完成这些工作后,请前往常见手册页面了解更多信息。