1、命令概述
useradd命令用来创建新的用户或更改用户的信息。帐号建好之后,再用passwd设定帐号的密码。使用useradd指令所建立的帐号,保存在/etc/passwd文本文件中。
2、命令语法
useradd 【选项】 【用户名】
3、命令选项
-b:新账户的主目录的基目录
-c:加上备注文字,备注文字保存在passwd的备注栏中。
-d:指定用户登入时的主目录,替换系统默认值/home/<用户名>
-D:变更预设值。
-e:指定账号的失效日期,日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效。
-f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1.
-g:指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,期默认值为100,即users。
-G:指定用户所属的附加群组。
-k:使用此目录作为骨架目录
-K:不使用 /etc/login.defs 中的默认值
-l:不要将此用户添加到最近登录和登录失败数据库
-m:自动建立用户的登入目录。
-M:不要自动建立用户的家目录。
-N:取消建立以用户名称为名的群组。
-r:建立系统账号。
-R:chroot 到的目录
-s:指定用户登入后所使用的shell。默认值为/bin/bash。
-u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。
-U:创建与用户同名的组
4、命令示例
4.1 -D 查看系统的默认值:
1 [root@localhost ~]# useradd -D 2 GROUP=100 3 HOME=/home 4 INACTIVE=-1 5 EXPIRE= 6 SHELL=/bin/bash 7 SKEL=/etc/skel 8 CREATE_MAIL_SPOOL=yes
解释:
1)新用户添加到GID为100的公共组
2)新用户的HOME目录将会位于/homoe/username
3)新用户账户密码在过期后不会被禁用
4)新用户账户未被设置为某个日期后就过期
5)新用户账户将bash shell作为默认shell
6)系统会将/etc/skel目录下的内容复制到用户的HOME目录下
7)系统为该用户账户在mail目录下创建一个用于接收邮件的文件
4.2 -M:不要自动建立用户的家目录。
1 [root@localhost ~]# useradd -M ceshi
4.3添加新用户 ceshi ,指定UID为888,指定归属用户组为root,root成员,其shell类型为/bin/sh。
1 [root@localhost ~]# useradd -u 888 -s /bin/sh -G root,root ceshi
4.4添加新用户ceshi,设置家目录为/tmp/ceshi,用户过期时间为2019/010/06.过期后两天停权。
1 [root@localhost ~]# useradd -e "2019/10/16" -f 2 -d /tmp/ceshi ceshi
4.5新建用户gem,该用户的登录Shell是/bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。
1 [root@localhost ~]# useradd -s /bin/sh -g group –G adm,root gem