useradd -D 命令可用选项
选项+参数含义-b HOME 设置所创建的主目录所在的默认目录,只需用目录名替换 HOME 即可,例如 useradd -D -b /gargae。
-e EXPIRE 设置密码失效时间,EXPIRE 参数应使用 YYYY-MM-DD 格式,例如 useradd -D -e 2010-05-18。
-f INACTIVE 设置密码过期的宽限天数,例如 useradd -D -f 7。
-g GROUP 设置新用户所在的初始组,例如 useradd -D -g bear。
-s SHELL 设置新用户的默认 shell,SHELL 必须是完整路径,例如 useradd -D -s /usr/bin/csh。
例如,要修改新用户的默认 Shell 为 /bin/csh,可以使用如下方式:
root@linuxidc:/home/linuxidc/linuxidc.com# useradd -D -s /bin/csh
root@linuxidc:/home/linuxidc/linuxidc.com# useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/csh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no
通过 /etc/default/useradd 文件,大家仅能修改有关新用户的部分默认��,有一些内容并没有在这个文件中,例如修改用户默认的 UID、GID,以及对用户密码的默认设置,对这些默认值的修改就需要在 /etc/login.defs 文件中进行。
有关 /etc/login.defs 文件,可阅读《Linux新建用户配置文件 /etc/login.defs 详解》一文,见 https://www.linuxidc.com/Linux/2019-05/158732.htm。
其实,useradd 命令创建用户的过程是这样的,系统首先读取 /etc/login.defs 和 /etc/default/useradd,根据这两个配置文件中定义的规则添加用户,也就是向 /etc/passwd、/etc/group、/etc/shadow、/etc/gshadow 文件中添加用户数据,接着系统会自动在 /etc/default/useradd 文件设定的目录下建立用户主目录,最后复制 /etc/skel 目录中的所有文件到此主目录中,由此,一个新的用户就创建完成了。
当然,如果你能彻底掌握 useradd 命令创建用户的整个过程,完全可以手动创建用户。