原文:Linux: How to Add Users and Create Users with useradd,作者:Jackson Bates

如果在家里有不止一个人在使用你的 Linux 机器,或者你在管理一个提供给多个用户访问的服务器,那么 useradd 命令对于创建用户是必不可少的。

另外,作为一个开发者,你使用的许多服务可能需要它们自己的用户账户来运行。因此,即使作为你自己机器上的一个单独的开发者,当你安装 MySQL 或类似的东西时,你可能会发现自己要使用这些命令。

你可以通过查看该工具的手册页面来全面了解 man useradd 的各种可用的选项。

但是,如果这让人不知所措,下面是创建用户时可能用到的一些常用选项的分类。

创建一个用户

这个命令的简单格式是 useradd [options] USERNAME

例如,useradd test(作为根用户——如果你不是以根用户身份登录的,则以 sudo 为前缀)。

这将创建一个名为 test 的用户,但这是一个有限的操作,不会创建其他有用的东西,比如他们的主目录或密码!

增加一个密码

然后通过 passwd 命令为测试用户添加一个密码:passwd test。这将提示你为该用户输入密码。

可以通过 useradd-p 选项添加一个加密的密码,但出于安全考虑,不建议这样做。

请注意,-p 选项不允许你输入明文密码,它希望你首先对其进行加密。这是故意为之的,因为你不应该这样做!使用 passwd 命令就可以了。

其他常用选项

主目录

为了创建一个具有默认主目录的用户,请使用以下选项:

useradd -m test

这个用户现在有一个 /home/test 目录。

要改变主目录,你可以通过一个额外的选项来修改,例如:

useradd -m -d /alternate test

Shell

默认情况下,你创建的用户可能会有默认的登录 shell bin/bash 或 bin/sh,这将在 /etc/default/useradd 中定义。

你可以用 -s 选项覆盖这个默认值:

useradd -s usr/bin/zsh test

结合起来

为了构建整个命令,你把选项一个接一个地放进去——顺序并不重要——然后以你想创建的用户名结束。

因此,创建一个拥有主目录和自定义 shell 的用户,看起来像这样:

useradd -m -s /usr/bin/zsh user

然后你将为该用户添加一个密码:passwd user

阅读详细的手册

现在你已经看到了这个工具的基本功能,希望页面能更容易浏览。

man useradd 将告诉你如何在账户上添加诸如有效期、分配组别等内容。