Scroll to navigation

NEWUSERS(8) 系统管理命令 NEWUSERS(8)

名称

newusers - 批量更新和创建新用户

大纲

newusers [ 选项] [文件]

描述

The newusers command reads a file (or the standard input by default) and uses this information to update a set of existing users or to create new users. Each line is in the same format as the standard password file (see passwd(5)) with the exceptions explained below:
pw_name:pw_passwd:pw_uid:pw_gid:pw_gecos:pw_dir:pw_shell
pw_name
这是用户的用户名。
 
既可以是新用户名也可以是现有用户名(也可以是 newusers 以前创建的用户)。现有用户时,将会更改用户信息,否则会创建新用户。
pw_passwd
此字段将被加密然后用于加密后密码的新值。
pw_uid
此字段用于定义用户的 UID。
 
如果此字段为空, newusers 会自动确定一个新的(未使用的)UID。
 
如果此字段包含一个数字,此数字会用于 UID。
 
如果此字段包含已经使用了的用户名(或者 newusers 在前边已经创建的一个用户),将会使用指定用户的 UID。
 
如果一个现有用户更改了 UID,此用户的文件所有权需要手动修复。
pw_gid
此字段用于定义用户的主组 ID。
 
如果此字段包含一个现有组的组名(或者 newusers 在前边创建的一个组),此组的 GID 会被用于做此用户的主组 ID。
 
如果此字段是一个数字,此数字会被用作此用户的主组 ID。如果没有对应此 GID 的现有组,将会使用此 GID 创建一个新组,名称和用户名相同。
 
如果此字段为空,将会使用用户名作为组名, newusers 自动确定的一个 GID 作为主组 ID 来创建一个新组。
 
如果此字段包含一个不存在的组的名字(也没有由 newusers 在前边创建),将使用指定的组名和 newusers 自动确定的 GID 创建一个组,并作为用户的主组。
pw_gecos
此字段复制到用户的 GECOS 字段。
pw_dir
此字段用于定义用户的主目录。
 
如果此字段指定的不是现有的目录,将会创建指定的目录,所有权设置为创建或更新的用户及其主组。
 
如果现有用户的主目录变更, newusers 不会移动或者复制旧目录的内容到新位置。这需要手动完成。
pw_shell
此字段定义了用户的 shell。对此字段不进行任何检查。
newusers 首先尝试创建或更改所有指定的用户,然后将这些更改写入用户或组数据库。如果发生错误(除非是在最后写入数据库过程中),不会有任何更改。
During this first pass, users are created with a locked password (and passwords are not changed for the users which are not created). A second pass is used to update the passwords using PAM. Failures to update a password are reported, but will not stop the other password updates.
此命令一般用于在大型的应用环境中,对大量账户进行一次性更新。

选项

newusers 命令可以使用的选项有:
-h, --help
现实帮助信息并退出。
-r, --system
创建一个系统账户。
 
System users will be created with no aging information in /etc/shadow, and their numeric identifiers are chosen in the SYS_UID_MIN-SYS_UID_MAX range, defined in login.defs, instead of UID_MIN-UID_MAX (and their GID counterparts for the creation of groups).
-R, --rootCHROOT_DIR
Apply changes in the CHROOT_DIR directory and use the configuration files from the CHROOT_DIR directory.

CAVEATS

输入文件必须受到保护,因为它包含未加密的密码。

配置文件

在 /etc/login.defs 中有如下配置变量,可以用来更改此工具的行为:
GID_MAX (number), GID_MIN (number)
useraddgroupaddnewusers 创建的常规组的组 ID 的范围。
 
GID_MINGID_MAX 的默认值分别是 1000 和 60000。
MAX_MEMBERS_PER_GROUP (number)
每个组条目的最大成员数。达到最大值时,在 /etc/group 开始一个新条目(行)(使用同样的名称,同样的密码,同样的 GID)。
 
默认值是 0,意味着组中的成员数没有限制。
 
此功能(分割组)允许限制组文件中的行长度。这对于确保 NIS 组的行比长于 1024 字符。
 
如果要强制这个限制,可以使用 25。
 
注意:分割组可能不受所有工具的支持(甚至在 Shadow 工具集中)。您不应该使用这个变量,除非真的需要。
PASS_MAX_DAYS (number)
一个密码可以使用的最大天数。如果密码比这旧,将会强迫更改密码。如果不指定,就假定为 -1,这会禁用这个限制。
PASS_MIN_DAYS (number)
两次更改密码时间的最小间隔。将会拒绝任何早于此的更改密码的尝试。如果不指定,假定为 -1,将会禁用这个限制。
PASS_WARN_AGE (number)
密码过期之前给出警告的天数。0 表示只有只在过期的当天警告,负值表示不警告。如果没有指定,不会给警告。
SYS_GID_MAX (number), SYS_GID_MIN (number)
useraddgroupaddnewusers 创建的系统组的组 ID 的范围。
 
SYS_GID_MINSYS_GID_MAX 的默认值分别是 101 和 GID_MIN-1。
SYS_UID_MAX (number), SYS_UID_MIN (number)
useraddnewusers 创建的系统用户的用户 ID 的范围。
 
SYS_UID_MINSYS_UID_MAX 的默认值分别是 101 和 UID_MIN-1。
UID_MAX (number), UID_MIN (number)
useraddnewusers 创建的普通用户的用户 ID 的范围。
 
UID_MINUID_MAX 的默认值分别是 1000 和 60000。
UMASK (number)
文件模式创建掩码初始化为此值。如果没有指定,掩码初始化为 022。
 
useraddnewusers 使用此掩码设置它们创建的用户主目录的模式。
 
也被 pam_umask 用作默认 umask 值。

文件

/etc/passwd
用户账户信息。
/etc/shadow
安全用户账户信息。
/etc/group
组账户信息。
/etc/gshadow
安全组账户信息。
/etc/login.defs
Shadow 密码套件配置。
/etc/pam.d/newusers
newusers 的 PAM 配置。

参见

login.defs(5), passwd(1), useradd(8).
2012-05-25 shadow-utils 4.1.5.1