useradd 命令

命令名称:useradd
命令所在路径:/usr/sbin/useradd
执行权限:root用户
功能描述:创建用户账号
语法:useradd [选项] [用户名称]
-u:指定用户的UID
-d:指定用户的家目录

如无必要,不建议改动;当一个用户是专门为处理一项服务而创建时,可以设置其家目录为项目所在目录。不过,最好的做法还是在其默认的家目录下创建一个快捷方式即可。

-c:设置用户说明
-g:指定用户的初始组(不建议改动)
-G:指定用户的附加组
-s:指定用户的登录Shell,默认是/bin/bash

  1. ## 范例
  2. useradd dhj ## 创建dhj用户,所有参数均默认
  3. useradd -u 8888 dhj ## 创建dhj用户,并指定用户ID为8888,用户组ID(GID)也会变成这个
  4. useradd -c "dhj是一个超级系统用户,权限较高" dhj ## 创建dhj用户,并添加用户说明,方便管理
  5. useradd -g dhjGroup dhj ## 创建dhj用户,并指定用户初始组为dhjGroup,不建议改动!
  6. useradd -G root dhj ## 创建dhj用户,并指定其附加组为root
  7. useradd -G root,gmd dhj ## 创建dhj用户,并指定其附加组为root和gmd
  8. useradd -s /sbin/nologin dhj ## 创建dhj用户,并指定登录shell

添加一个系统用户之后,/etc/passwd/etc/shadow/etc/group/etc/gshadow/var/spool/mail//home/ 等目录或文件都会被改动。

用户默认值文件

添加系统用户时,其缺省信息通过/etc/default/useradd文件来填充。

  1. ## /etc/default/useradd 文件内容
  2. GROUP=100 ## 用户默认组,公有模式下是使用这个,私有模式下会创建同名的用户组
  3. HOME=/home ## 用户家目录
  4. INACTIVE=-1 ## 密码过期宽限天数(shadow文件的第7个字段)
  5. EXPIRE= ## 密码失效时间(shadow文件的第8个字段)
  6. SHELL=/bin/bash ## 默认shell
  7. SKEL=/etc/skel ## 模板目录
  8. CREATE_MAIL_SPOOL=yes ## 是否建立邮箱

密码相关的默认信息,通过/etc/login.defs文件来填充

  1. ## /etc/login.defs 文件内容
  2. PASS_MAX_DAYS 99999 ## 密码有效其(shadow文件第5个字段)
  3. PASS_MIN_DAYS 0 ## 密码修改最小时间间隔(shadow文件第4个字段)
  4. PASS_MIN_LEN 5 ## 密码最小位数(PAM认证)
  5. PASS_WARN_AGE 7 ## 密码到期警告天数(shadow文件第6位)
  6. UID_MIN 500 ## 最小UID
  7. GID_MAX 60000 ## 最大GID
  8. ENCRYPT_METHOD SHA512 ## 加密模式