1 语法
useradd [-c comment] [-d home_dir]
[-e expire_date] [-f inactive_time]
[-g initial_group] [-G group[,...]]
[-m [-k skeleton_dir] | -M] [-s shell]
[-u uid [ -o]] [-n] [-r] login
useradd -D [-g default_group] [-b default_home]
[-f default_inactive] [-e default_expire_date]
[-s default_shell]
如果不加 -D 参数, useradd 指令会使用预设值。新建的帐号会生成相关档案,比如使用者目录、起始档案等。
1.1 选项列表
useradd 可使用的选项列表为:
选项
默认值
说明
-c comment
-
password 说明。
-d home_dir
default_home 内 login 名称。
帐号登入时所使用的 home_dir。
-e expire_date
-
账号截止日期,格式为 MM/DD/YY。
-f inactive_days
-1
帐号过期几日后永久冻结。-1 表示关闭此功能;0 立刻被冻结。
-g initial_group
1
group 名称或 group ID。以此作为该账号的起始群组( group )。群组名须为现有名称或 group ID。
-G group,[...]
指定该账号为此一系列 groups 的成员。每个群组使用 " ," 分隔开来。
-m
不建立目录以及不复制任何档案。
账号目录如果不存在则自动创建。
-k
不建立目录以及不复制任何档案。
将 skeleton_dir 内的档案复制到账号目录下。在 /etc/skel 目录下的档案也会被复制过去。
-M
-
即使在 /etc/login/defs 指定了要新建的账号目录,也不新建。
-n
账号群组与账号名称相同。
该选项可以取消此项设置。
-r
-
用来建立系统帐号。系统帐号的 UID (即账户 ID)会比定义在 /etc/login.defs 的 UID_MIN 来的小。注意:以此所建立的帐号不会建立账号目录,也不会纪录在 /etc/login.defs 中。可以额外指定 -m 参数,为其指定账号目录。这是 REDHAT 额外增设的选项。
-s shell
-
账号登入后使用的 shell 名称。
-u uid
最小不得小于 999 并且逐次递增。
账号 ID 值。必须唯一,除非用 -o 选项,数字不可为负值。0~ 999 是预留给系统帐号使用。
1.2 修改默认值
当出现 -D 选项时,就可以修改默认值。
选项
说明
-b default_home
定义账号所属目录的前一个目录。账号名称会附加在 default_home 之后。如果使用了 -d ,则此选项无效。
-e default_expire_date
帐号过期日期。
-f default_inactive
帐号过期几天后停权。
-g default_group
新帐号起始群组名或 ID 。 群组名与群组 ID 必须已存在。
-s default_shell
账号登入后所使用的 shell 名称。设置后,未来新加入的帐号都将使用此 shell 名称。
如果不指定 -D 选项,那么 useradd 会使用预设的值。
2 示例
(1)新建账号
useradd deniro
在 /etc/passwd 中,可以看到新建的账号:
(2)新建账号的同时,指定归属为某个群组
useradd -g root deniro
这里为新建的账号,指定为 root 群组。
(3)新建系统账号
vi /etc/passwd