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