1NEWUSERS(8)               System Management Commands               NEWUSERS(8)
2
3
4

NAME

6       newusers - update and create new users in batch
7

SYNOPSIS

9       newusers [options] [file]
10

DESCRIPTION

12       The newusers command reads a file (or the standard input by default)
13       and uses this information to update a set of existing users or to
14       create new users. Each line is in the same format as the standard
15       password file (see passwd(5)) with the exceptions explained below:
16
17       pw_name:pw_passwd:pw_uid:pw_gid:pw_gecos:pw_dir:pw_shell
18
19       pw_name
20           This is the name of the user.
21
22           It can be the name of a new user or the name of an existing user
23           (or a user created before by newusers). In case of an existing
24           user, the user's information will be changed, otherwise a new user
25           will be created.
26
27       pw_passwd
28           This field will be encrypted and used as the new value of the
29           encrypted password.
30
31       pw_uid
32           This field is used to define the UID of the user.
33
34           If the field is empty, a new (unused) UID will be defined
35           automatically by newusers.
36
37           If this field contains a number, this number will be used as the
38           UID.
39
40           If this field contains the name of an existing user (or the name of
41           a user created before by newusers), the UID of the specified user
42           will be used.
43
44           If the UID of an existing user is changed, the files ownership of
45           the user's file should be fixed manually.
46
47       pw_gid
48           This field is used to define the primary group ID for the user.
49
50           If this field contains the name of an existing group (or a group
51           created before by newusers), the GID of this group will be used as
52           the primary group ID for the user.
53
54           If this field is a number, this number will be used as the primary
55           group ID of the user. If no groups exist with this GID, a new group
56           will be created with this GID, and the name of the user.
57
58           If this field is empty, a new group will be created with the name
59           of the user and a GID will be automatically defined by newusers to
60           be used as the primary group ID for the user and as the GID for the
61           new group.
62
63           If this field contains the name of a group which does not exist
64           (and was not created before by newusers), a new group will be
65           created with the specified name and a GID will be automatically
66           defined by newusers to be used as the primary group ID for the user
67           and GID for the new group.
68
69       pw_gecos
70           This field is copied in the GECOS field of the user.
71
72       pw_dir
73           This field is used to define the home directory of the user.
74
75           If this field does not specify an existing directory, the specified
76           directory is created, with ownership set to the user being created
77           or updated and its primary group. Note that newusers does not
78           create parent directories of the new user's home directory. The
79           newusers command will fail to create the home directory if the
80           parent directories do not exist, and will send a message to stderr
81           informing the user of the failure. The newusers command will not
82           halt or return a failure to the calling shell if it fails to create
83           the home directory, it will continue to process the batch of new
84           users specified.
85
86           If the home directory of an existing user is changed, newusers does
87           not move or copy the content of the old directory to the new
88           location. This should be done manually.
89
90       pw_shell
91           This field defines the shell of the user. No checks are performed
92           on this field.
93
94       newusers first tries to create or change all the specified users, and
95       then write these changes to the user or group databases. If an error
96       occurs (except in the final writes to the databases), no changes are
97       committed to the databases.
98
99       This command is intended to be used in a large system environment where
100       many accounts are updated at a single time.
101

OPTIONS

103       The options which apply to the newusers command are:
104
105       --badname
106           Allow names that do not conform to standards.
107
108       -c, --crypt-method
109           Use the specified method to encrypt the passwords.
110
111           The available methods are DES, MD5, NONE, and SHA256 or SHA512 if
112           your libc support these methods.
113
114       -h, --help
115           Display help message and exit.
116
117       -r, --system
118           Create a system account.
119
120           System users will be created with no aging information in
121           /etc/shadow, and their numeric identifiers are chosen in the
122           SYS_UID_MIN-SYS_UID_MAX range, defined in login.defs, instead of
123           UID_MIN-UID_MAX (and their GID counterparts for the creation of
124           groups).
125
126       -R, --root CHROOT_DIR
127           Apply changes in the CHROOT_DIR directory and use the configuration
128           files from the CHROOT_DIR directory. Only absolute paths are
129           supported.
130
131       -s, --sha-rounds
132           Use the specified number of rounds to encrypt the passwords.
133
134           The value 0 means that the system will choose the default number of
135           rounds for the crypt method (5000).
136
137           A minimal value of 1000 and a maximal value of 999,999,999 will be
138           enforced.
139
140           You can only use this option with the SHA256 or SHA512 crypt
141           method.
142
143           By default, the number of rounds is defined by the
144           SHA_CRYPT_MIN_ROUNDS and SHA_CRYPT_MAX_ROUNDS variables in
145           /etc/login.defs.
146

CAVEATS

148       The input file must be protected since it contains unencrypted
149       passwords.
150
151       You should make sure the passwords and the encryption method respect
152       the system's password policy.
153

CONFIGURATION

155       The following configuration variables in /etc/login.defs change the
156       behavior of this tool:
157
158       ENCRYPT_METHOD (string)
159           This defines the system default encryption algorithm for encrypting
160           passwords (if no algorithm are specified on the command line).
161
162           It can take one of these values: DES (default), MD5, SHA256,
163           SHA512. MD5 and DES should not be used for new hashes, see crypt(5)
164           for recommendations.
165
166           Note: this parameter overrides the MD5_CRYPT_ENAB variable.
167
168       GID_MAX (number), GID_MIN (number)
169           Range of group IDs used for the creation of regular groups by
170           useradd, groupadd, or newusers.
171
172           The default value for GID_MIN (resp.  GID_MAX) is 1000 (resp.
173           60000).
174
175       HOME_MODE (number)
176           The mode for new home directories. If not specified, the UMASK is
177           used to create the mode.
178
179           useradd and newusers use this to set the mode of the home directory
180           they create.
181
182       MAX_MEMBERS_PER_GROUP (number)
183           Maximum members per group entry. When the maximum is reached, a new
184           group entry (line) is started in /etc/group (with the same name,
185           same password, and same GID).
186
187           The default value is 0, meaning that there are no limits in the
188           number of members in a group.
189
190           This feature (split group) permits to limit the length of lines in
191           the group file. This is useful to make sure that lines for NIS
192           groups are not larger than 1024 characters.
193
194           If you need to enforce such limit, you can use 25.
195
196           Note: split groups may not be supported by all tools (even in the
197           Shadow toolsuite). You should not use this variable unless you
198           really need it.
199
200       MD5_CRYPT_ENAB (boolean)
201           Indicate if passwords must be encrypted using the MD5-based
202           algorithm. If set to yes, new passwords will be encrypted using the
203           MD5-based algorithm compatible with the one used by recent releases
204           of FreeBSD. It supports passwords of unlimited length and longer
205           salt strings. Set to no if you need to copy encrypted passwords to
206           other systems which don't understand the new algorithm. Default is
207           no.
208
209           This variable is superseded by the ENCRYPT_METHOD variable or by
210           any command line option used to configure the encryption algorithm.
211
212           This variable is deprecated. You should use ENCRYPT_METHOD.
213
214       PASS_MAX_DAYS (number)
215           The maximum number of days a password may be used. If the password
216           is older than this, a password change will be forced. If not
217           specified, -1 will be assumed (which disables the restriction).
218
219       PASS_MIN_DAYS (number)
220           The minimum number of days allowed between password changes. Any
221           password changes attempted sooner than this will be rejected. If
222           not specified, 0 will be assumed (which disables the restriction).
223
224       PASS_WARN_AGE (number)
225           The number of days warning given before a password expires. A zero
226           means warning is given only upon the day of expiration, a negative
227           value means no warning is given. If not specified, no warning will
228           be provided.
229
230       SHA_CRYPT_MIN_ROUNDS (number), SHA_CRYPT_MAX_ROUNDS (number)
231           When ENCRYPT_METHOD is set to SHA256 or SHA512, this defines the
232           number of SHA rounds used by the encryption algorithm by default
233           (when the number of rounds is not specified on the command line).
234
235           With a lot of rounds, it is more difficult to brute forcing the
236           password. But note also that more CPU resources will be needed to
237           authenticate users.
238
239           If not specified, the libc will choose the default number of rounds
240           (5000), which is orders of magnitude too low for modern hardware.
241
242           The values must be inside the 1000-999,999,999 range.
243
244           If only one of the SHA_CRYPT_MIN_ROUNDS or SHA_CRYPT_MAX_ROUNDS
245           values is set, then this value will be used.
246
247           If SHA_CRYPT_MIN_ROUNDS > SHA_CRYPT_MAX_ROUNDS, the highest value
248           will be used.
249
250       SUB_GID_MIN (number), SUB_GID_MAX (number), SUB_GID_COUNT (number)
251           If /etc/subuid exists, the commands useradd and newusers (unless
252           the user already have subordinate group IDs) allocate SUB_GID_COUNT
253           unused group IDs from the range SUB_GID_MIN to SUB_GID_MAX for each
254           new user.
255
256           The default values for SUB_GID_MIN, SUB_GID_MAX, SUB_GID_COUNT are
257           respectively 100000, 600100000 and 65536.
258
259       SUB_UID_MIN (number), SUB_UID_MAX (number), SUB_UID_COUNT (number)
260           If /etc/subuid exists, the commands useradd and newusers (unless
261           the user already have subordinate user IDs) allocate SUB_UID_COUNT
262           unused user IDs from the range SUB_UID_MIN to SUB_UID_MAX for each
263           new user.
264
265           The default values for SUB_UID_MIN, SUB_UID_MAX, SUB_UID_COUNT are
266           respectively 100000, 600100000 and 65536.
267
268       SYS_GID_MAX (number), SYS_GID_MIN (number)
269           Range of group IDs used for the creation of system groups by
270           useradd, groupadd, or newusers.
271
272           The default value for SYS_GID_MIN (resp.  SYS_GID_MAX) is 101
273           (resp.  GID_MIN-1).
274
275       SYS_UID_MAX (number), SYS_UID_MIN (number)
276           Range of user IDs used for the creation of system users by useradd
277           or newusers.
278
279           The default value for SYS_UID_MIN (resp.  SYS_UID_MAX) is 101
280           (resp.  UID_MIN-1).
281
282       UID_MAX (number), UID_MIN (number)
283           Range of user IDs used for the creation of regular users by useradd
284           or newusers.
285
286           The default value for UID_MIN (resp.  UID_MAX) is 1000 (resp.
287           60000).
288
289       UMASK (number)
290           The file mode creation mask is initialized to this value. If not
291           specified, the mask will be initialized to 022.
292
293           useradd and newusers use this mask to set the mode of the home
294           directory they create if HOME_MODE is not set.
295
296           It is also used by login to define users' initial umask. Note that
297           this mask can be overridden by the user's GECOS line (if
298           QUOTAS_ENAB is set) or by the specification of a limit with the K
299           identifier in limits(5).
300

FILES

302       /etc/passwd
303           User account information.
304
305       /etc/shadow
306           Secure user account information.
307
308       /etc/group
309           Group account information.
310
311       /etc/gshadow
312           Secure group account information.
313
314       /etc/login.defs
315           Shadow password suite configuration.
316
317       /etc/subgid
318           Per user subordinate group IDs.
319
320       /etc/subuid
321           Per user subordinate user IDs.
322

SEE ALSO

324       login.defs(5), passwd(1), subgid(5), subuid(5), useradd(8).
325
326
327
328shadow-utils 4.14.0               10/03/2023                       NEWUSERS(8)
Impressum