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:
It can be the name of a new user or the name of an existing user (or a user created before by newusers). In case of an existing user, the user's information will be changed, otherwise a new user will be created.
If the field is empty, a new (unused) UID will be defined automatically by newusers.
If this field contains the name of an existing user (or the name of a user created before by newusers), the UID of the specified user will be used.
If this field contains the name of an existing group (or a group created before by newusers), the GID of this group will be used as the primary group ID for the user.
如果此字段是一个数字，此数字会被用作此用户的主组 ID。如果没有对应此 GID 的现有组，将会使用此 GID 创建一个新组，名称和用户名相同。
If this field is empty, a new group will be created with the name of the user and a GID will be automatically defined by newusers to be used as the primary group ID for the user and as the GID for the new group.
If this field contains the name of a group which does not exist (and was not created before by newusers), a new group will be created with the specified name and a GID will be automatically defined by newusers to be used as the primary group ID for the user and GID for the new group.
If this field does not specify an existing directory, the specified directory is created, with ownership set to the user being created or updated and its primary group. Note that newusers does not create parent directories of the new user's home directory. The newusers command will fail to create the home directory if the parent directories do not exist, and will send a message to stderr informing the user of the failure. The newusers command will not halt or return a failure to the calling shell if it fails to create the home directory, it will continue to process the batch of new users specified.
If the home directory of an existing user is changed, newusers does not move or copy the content of the old directory to the new location. This should be done manually.
newusers first tries to create or change all the specified users, and then write these changes to the user or group databases. If an error occurs (except in the final writes to the databases), no changes are committed to the databases.
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.
The options which apply to the newusers command are:
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, --root CHROOT_DIR
The following configuration variables in /etc/login.defs change the behavior of this tool: