我们在《如何在 Ubuntu和 Debian 上创建 sudo 用户》一文中提到过 useradd 命令,useradd 命令可以让超级用户(比如root)在 Linux 系统中创建新的用户账户。
它是一个低级实用程序,默认情况下只是简单的创建用户,但是提供了几个选项来创建具有各种配置的用户。
useradd [options] username
在这里需要注意,必须是 root 用户或者具有 sudo 权限的用户才能使用次命令。
下面我们来详细看下如何使用 useradd 命令。
使用 useradd 命令在 Linux 中添加新用户
useradd new_username
上述命令会创建一个用户账户,但是:
不会创建用户的主目录;
密码必须单独设置;
用户的默认 shell 是 sh。
如此,可以使用 passwd 命令为此新用户账户设置密码:
passwd new_username
useradd 命令的 -m 选项可以将系统框架目录(system skeleton directory,位于 /etc/skel)中的所有文件复制到新创建的主目录中。
useradd -m new_username
useradd -d Path_to_Existing_Directory new_username
添加新用户时指定 shell
useradd 命令创建的新用户,其默认 shell 是 sh。在现代系统中,尤其当 bash 或者 zsh 诞生以后,已经很少人在使用 sh 了。
我们可以在创建用户后更改其默认 shell,但也可以在创建用户账户的同时使用 -s 选项来指定一个默认的 shell。
useradd -s bin/bash new_username
添加新用户时指定一个不同名称的组
通常,创建新用户时,会创建与该用户同名的组,新用户被添加为此组的成员。
useradd -g Existing_Group_Name_or_ID new_username
比如我们在为开发人员创建账户,可能希望将所有开发人员添加到 "dev" 组中。
useradd -G group_1 group_2 new_username
比如,如果我们需要创建一个 sudo 用户,那么在创建该用户的时候还需要将其添加到 sudo 组中,这是其中一个应用场景。
添加具有特定用户ID(UID)的新用户
useradd -u uid new_username
其他
useradd -d home/abhishek -s bin/bash -g my_group
如前文所属,在默认情况下,useradd 命令功能比较单一,只是简单的创建用户,所以有很多人更喜欢使用 adduser 命令。关于adduser 和 useradd 命令的区别,我们会在以后单独介绍。
以上就是本次分享全部内容,欢迎讨论。




