'\" t .\" Title: newusers .\" Author: Julianne Frances Haugh .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 30.07.2026 .\" Manual: System Management Commands .\" Source: shadow-utils 4.20.0 .\" Language: German .\" .TH "NEWUSERS" "8" "30.07.2026" "shadow\-utils 4\&.20\&.0" "System Management Commands" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" newusers \- erstellt neue oder aktualisiert vorhandene Benutzerkonten in einem Aufruf .SH "\(:UBERSICHT" .HP \w'\fBnewusers\fR\ 'u \fBnewusers\fR [\fIoptions\fR] [\fIfile\fR] .SH "BESCHREIBUNG" .PP The \fBnewusers\fR command reads a \fIfile\fR (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 \fBpasswd\fR(5)) with the exceptions explained below: .PP pw_Name:pw_Passwort:pw_Benutzerkennung:pw_Gruppenkennung:pw_GECOS:pw_Verzeichnis:pw_Shell .PP \fIpw_name\fR .RS 4 Dies ist der Anmeldename des Benutzers\&. .sp It can be the name of a new user or the name of an existing user (or a user created before by \fBnewusers\fR)\&. In case of an existing user, the user\*(Aqs information will be changed, otherwise a new user will be created\&. .RE .PP \fIpw_passwd\fR .RS 4 If this field is not empty, it will be encrypted and used as the new value of the encrypted password\&. .RE .PP \fIpw_uid\fR .RS 4 Mit diesem Feld wird die Benutzerkennung festgelegt\&. .sp If the field is empty, a new (unused) UID will be defined automatically by \fBnewusers\fR\&. .sp Wenn dieses Feld eine Zahl enth\(:alt, wird sie als Benutzerkennung \(:ubernommen\&. .sp If this field contains the name of an existing user (or the name of a user created before by \fBnewusers\fR), the UID of the specified user will be used\&. .sp Falls die Kennung eines bestehenden Benutzers ver\(:andert wird, muss bei den Dateien des Benutzers der Eigent\(:umer per Hand angepasst werden\&. .RE .PP \fIpw_gid\fR .RS 4 Mit diesem Feld wird die Kennung der prim\(:aren Gruppe des Benutzers festgelegt\&. .sp If this field contains the name of an existing group (or a group created before by \fBnewusers\fR), the GID of this group will be used as the primary group ID for the user\&. .sp Wenn dieses Feld eine Zahl enth\(:alt, wird sie als Kennung der prim\(:aren Gruppe des Benutzers verwendet\&. Falls keine Gruppe mit dieser Kennung existiert, wird eine neue Gruppe mit dieser Kennung und dem Namen des Benutzers erstellt\&. .sp 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 \fBnewusers\fR to be used as the primary group ID for the user and as the GID for the new group\&. .sp If this field contains the name of a group which does not exist (and was not created before by \fBnewusers\fR), a new group will be created with the specified name and a GID will be automatically defined by \fBnewusers\fR to be used as the primary group ID for the user and GID for the new group\&. .RE .PP \fIpw_gecos\fR .RS 4 Dieses Feld wird in das GECOS\-Feld des Benutzers kopiert\&. .RE .PP \fIpw_dir\fR .RS 4 In diesem Feld wird das pers\(:onliche Verzeichnis des Benutzers definiert\&. .sp 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 \fInewusers does not create parent directories \fR of the new user\*(Aqs 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\&. .sp If the home directory of an existing user is changed, \fBnewusers\fR does not move or copy the content of the old directory to the new location\&. This should be done manually\&. .RE .PP \fIpw_shell\fR .RS 4 Mit diesem Feld wird die Shell des Benutzers festgelegt, wobei diese Eingabe nicht \(:uberpr\(:uft wird\&. .RE .PP \fBnewusers\fR 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\&. .PP Im ersten Durchlauf werden Benutzer mit einem gesperrten Passwort erstellt und Passw\(:orter von bereits vorhandenen Benutzern werden nicht ver\(:andert\&. Im zweiten Durchlauf werden die Passw\(:orter mit PAM aktualisiert\&. Sofern dabei ein Fehler auftritt, wird dieser angezeigt, die Aktualisierung der \(:ubrigen Passw\(:orter aber fortgesetzt\&. .PP Dieser Befehl ist f\(:ur weitreichende Systeme gedacht, bei denenviele Konten gleichzeitig angelegt werden m\(:ussen\&. .SH "OPTIONEN" .PP The options which apply to the \fBnewusers\fR command are: .PP \fB\-\-badname\fR\ \& .RS 4 erlaube Namen, die nicht den Standards entsprechen\&. .RE .PP \fB\-h\fR, \fB\-\-help\fR .RS 4 zeigt die Hilfe an und beendet das Programm\&. .RE .PP \fB\-r\fR, \fB\-\-system\fR .RS 4 erstellt ein Systemkonto .sp System users will be created with no aging information in /etc/shadow, and their numeric identifiers are chosen in the \fBSYS_UID_MIN\fR\-\fBSYS_UID_MAX\fR range, defined in login\&.defs, instead of \fBUID_MIN\fR\-\fBUID_MAX\fR (and their \fBGID\fR counterparts for the creation of groups)\&. .RE .PP \fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR .RS 4 Apply changes in the \fICHROOT_DIR\fR directory and use the configuration files from the \fICHROOT_DIR\fR directory\&. Only absolute paths are supported\&. No SELINUX support\&. .RE .SH "WARNUNGEN" .PP Die Eingabedatei muss gesch\(:utzt werden, da sie unverschl\(:usselte Passw\(:orter enth\(:alt\&. .SH "KONFIGURATION" .PP The following configuration variables in /etc/login\&.defs change the behavior of this tool: .PP \fBGID_MAX\fR (number), \fBGID_MIN\fR (number) .RS 4 Range of group IDs used for the creation of regular groups by \fBuseradd\fR, \fBgroupadd\fR, or \fBnewusers\fR\&. .sp The default value for \fBGID_MIN\fR (resp\&. \fBGID_MAX\fR) is 1000 (resp\&. 60000)\&. .RE .PP \fBHOME_MODE\fR (number) .RS 4 The mode for new home directories\&. If not specified, the \fBUMASK\fR is used to create the mode\&. .sp \fBuseradd\fR and \fBnewusers\fR use this to set the mode of the home directory they create\&. .RE .PP \fBMAX_MEMBERS_PER_GROUP\fR (number) .RS 4 Maximum members per group entry\&. When the maximum is reached, a new group entry (line) is started in /etc/group (with the same name, same password, and same GID)\&. .sp Der Standardwert ist 0, was bedeutet, dass die Anzahl der Mitglieder einer Gruppe nicht begrenzt ist\&. .sp Das Aufteilen von Gruppen erm\(:oglicht es, L\(:angenvorgaben f\(:ur die Zeilen der Gruppendatei einzuhalten\&. Damit kann sichergestellt werden, dass die Zeilen f\(:ur NIS\-Gruppen nicht l\(:anger als 1024 Zeichen sind\&. .sp Falls Sie eine solche Begrenzung ben\(:otigen, k\(:onnen Sie 25 verwenden\&. .sp Hinweis: Mit aufgeteilten Gruppen k\(:onnen m\(:oglicherweise nicht alle Hilfsprogramme (nicht einmal jene der Shadow\-Programmsammlung) umgehen\&. Sie sollten diese Variable nur setzen, wenn Sie sie wirklich ben\(:otigen\&. .RE .PP \fBPASS_MAX_DAYS\fR (number) .RS 4 die maximale Anzahl von Tagen, die ein Passwort verwendet werden darf\&. Wenn das Passwort \(:alter ist, wird ein Wechsel des Passworts erzwungen\&. Falls nicht definiert, wird \-1 angenommen, womit Passw\(:orter unbefristet gelten\&. .RE .PP \fBPASS_WARN_AGE\fR (number) .RS 4 The number of days warning given before a password expires\&. A zero means warning is given only upon the day of expiration, a value of \-1 means no warning is given\&. If not specified, no warning will be provided\&. .RE .PP \fBSUB_GID_MIN\fR (number), \fBSUB_GID_MAX\fR (number), \fBSUB_GID_COUNT\fR (number) .RS 4 If /etc/subuid exists, the commands \fBuseradd\fR and \fBnewusers\fR (unless the user already have subordinate group IDs) allocate \fBSUB_GID_COUNT\fR unused group IDs from the range \fBSUB_GID_MIN\fR to \fBSUB_GID_MAX\fR for each new user\&. .sp The default values for \fBSUB_GID_MIN\fR, \fBSUB_GID_MAX\fR, \fBSUB_GID_COUNT\fR are respectively 100000, 600100000 and 65536\&. .RE .PP \fBSUB_GID_DETERMINISTIC\fR (boolean) .RS 4 If set to \fIyes\fR, the commands \fBuseradd\fR, \fBusermod\fR, and \fBnewusers\fR will calculate subordinate GID ranges deterministically based on the user\*(Aqs UID instead of searching for the next free range\&. The formula used is: .sp .if n \{\ .RS 4 .\} .nf start = SUB_GID_MIN + ((UID \- UID_MIN) * SUB_GID_COUNT) end = start + SUB_GID_COUNT \- 1 .fi .if n \{\ .RE .\} .sp This ensures the same UID always receives the same subordinate GID range on every system, making it suitable for environments with centralized user management (LDAP, NIS, etc\&.) or synchronized UIDs across systems\&. .sp If \fBSUB_GID_DETERMINISTIC\fR is enabled, you can use \fBusermod \-\-add\-subgids \-S\fR to produce deterministic subgids\&. .sp \fBWARNING\fR: Because \fBUID_MIN\fR is used to calculate the ranges, any change of \fBUID_MIN\fR will change the ranges calculated\&. \fBSUB_GID_COUNT\fR is used to calculate the ranges, any change of \fBSUB_GID_COUNT\fR will change the ranges calculated\&. Users with identities less than \fBUID_MIN\fR are incompatible with \fBSUB_GID_DETERMINISTIC\fR, but can still be set manually\&. .sp \fBWARNING\fR: Do not mix deterministic and linear (default) allocation on the same system or across systems sharing /etc/subgid via network storage (NFS, etc\&.)\&. Mixing allocation methods \fB will cause subordinate ID range conflicts and overlaps \fR\&. .sp The default value for \fBSUB_GID_DETERMINISTIC\fR is \fIno\fR\&. .SS "Range Calculation Examples" With default configuration (\fBUID_MIN\fR=1000, \fBSUB_GID_MIN\fR=100000, \fBSUB_GID_COUNT\fR=65536): .TS allbox tab(:); lB lB lB. T{ UID T}:T{ Calculation T}:T{ Subordinate GID Range T} .T& l l l l l l l l l l l l. T{ 1000 T}:T{ 100000 + ((1000\-1000) * 65536) T}:T{ 100000\-165535 T} T{ 1001 T}:T{ 100000 + ((1001\-1000) * 65536) T}:T{ 165536\-231071 T} T{ 1002 T}:T{ 100000 + ((1002\-1000) * 65536) T}:T{ 231072\-296607 T} T{ 1100 T}:T{ 100000 + ((1100\-1000) * 65536) T}:T{ 6653600\-6719135 T} .TE .sp 1 .SS "Subordinate ID Space Planning" When planning subordinate ID allocation, calculate the maximum number of users the space can accommodate: .sp .if n \{\ .RS 4 .\} .nf capacity = (SUB_GID_MAX \- SUB_GID_MIN) / SUB_GID_COUNT .fi .if n \{\ .RE .\} .sp With default values: (600100000 \- 100000) / 65536 ≈ 9155 users\&. .sp For high\-density environments with many users and smaller allocations: .sp .if n \{\ .RS 4 .\} .nf SUB_GID_COUNT 4096 SUB_GID_MIN 100000 SUB_GID_MAX 10000000 .fi .if n \{\ .RE .\} .sp This gives: (10000000 \- 100000) / 4096 ≈ 2417 users\&. .RE .PP \fBUNSAFE_SUB_GID_DETERMINISTIC_WRAP\fR (boolean) .RS 4 \fB WARNING: SECURITY RISK \- MAY CAUSE RANGE OVERLAPS AND PRIVILEGE ESCALATION! \fR .sp Only effective when \fBSUB_GID_DETERMINISTIC\fR is set to \fIyes\fR\&. .sp When set to \fIyes\fR (WRAP MODE), allows the deterministic range calculation to wrap around using modulo arithmetic when a UID would overflow the configured subordinate ID space\&. The subordinate ID space is treated as a ring buffer\&. .sp \fBWARNING\fR: Range overlaps can lead to container escapes and privilege escalation\&. For example, with \fBSUB_GID_MIN\fR=100000, \fBSUB_GID_MAX\fR=200000, \fBSUB_GID_COUNT\fR=65536, User A (UID 1000) gets range [100000, 165535] and User B (UID 1001) wraps and overlaps with User A\&. User B\*(Aqs container can now access files from User A\*(Aqs containers\&. .sp Use \fBonly\fR in development, testing, or tightly constrained lab environments\&. .sp When set to \fIno\fR (default), any arithmetic overflow or range exceeding \fBSUB_GID_MAX\fR is a hard error\&. This guarantees non\-overlapping, monotonic allocation\&. .sp The default value for \fBUNSAFE_SUB_GID_DETERMINISTIC_WRAP\fR is \fIno\fR\&. .RE .PP \fBSUB_UID_MIN\fR (number), \fBSUB_UID_MAX\fR (number), \fBSUB_UID_COUNT\fR (number) .RS 4 If /etc/subuid exists, the commands \fBuseradd\fR and \fBnewusers\fR (unless the user already have subordinate user IDs) allocate \fBSUB_UID_COUNT\fR unused user IDs from the range \fBSUB_UID_MIN\fR to \fBSUB_UID_MAX\fR for each new user\&. .sp The default values for \fBSUB_UID_MIN\fR, \fBSUB_UID_MAX\fR, \fBSUB_UID_COUNT\fR are respectively 100000, 600100000 and 65536\&. .RE .PP \fBSUB_UID_DETERMINISTIC\fR (boolean) .RS 4 If set to \fIyes\fR, the commands \fBuseradd\fR, \fBusermod\fR, and \fBnewusers\fR will calculate subordinate UID ranges deterministically based on the user\*(Aqs UID instead of searching for the next free range\&. The formula used is: .sp .if n \{\ .RS 4 .\} .nf start = SUB_UID_MIN + ((UID \- UID_MIN) * SUB_UID_COUNT) end = start + SUB_UID_COUNT \- 1 .fi .if n \{\ .RE .\} .sp This ensures the same UID always receives the same subordinate UID range on every system, making it suitable for environments with centralized user management (LDAP, NIS, etc\&.) or synchronized UIDs across systems\&. .sp If \fBSUB_UID_DETERMINISTIC\fR is enabled, you can use \fBusermod \-\-add\-subuids \-S\fR to produce deterministic subuids\&. .sp \fBWARNING\fR: Because \fBUID_MIN\fR is used to calculate the ranges, any change of \fBUID_MIN\fR will change the ranges calculated\&. \fBSUB_UID_COUNT\fR is used to calculate the ranges, any change of \fBSUB_UID_COUNT\fR will change the ranges calculated\&. Users with identities less than \fBUID_MIN\fR are incompatible with \fBSUB_UID_DETERMINISTIC\fR, but can still be set manually\&. .sp \fBWARNING\fR: Do not mix deterministic and linear (default) allocation on the same system or across systems sharing /etc/subuid via network storage (NFS, etc\&.)\&. Mixing allocation methods \fB will cause subordinate ID range conflicts and overlaps \fR\&. .sp The default value for \fBSUB_UID_DETERMINISTIC\fR is \fIno\fR\&. .SS "Range Calculation Examples" With default configuration (\fBUID_MIN\fR=1000, \fBSUB_UID_MIN\fR=100000, \fBSUB_UID_COUNT\fR=65536): .TS allbox tab(:); lB lB lB. T{ UID T}:T{ Calculation T}:T{ Subordinate UID Range T} .T& l l l l l l l l l l l l. T{ 1000 T}:T{ 100000 + ((1000\-1000) * 65536) T}:T{ 100000\-165535 T} T{ 1001 T}:T{ 100000 + ((1001\-1000) * 65536) T}:T{ 165536\-231071 T} T{ 1002 T}:T{ 100000 + ((1002\-1000) * 65536) T}:T{ 231072\-296607 T} T{ 1100 T}:T{ 100000 + ((1100\-1000) * 65536) T}:T{ 6653600\-6719135 T} .TE .sp 1 .SS "Subordinate ID Space Planning" When planning subordinate ID allocation, calculate the maximum number of users the space can accommodate: .sp .if n \{\ .RS 4 .\} .nf capacity = (SUB_UID_MAX \- SUB_UID_MIN) / SUB_UID_COUNT .fi .if n \{\ .RE .\} .sp With default values: (600100000 \- 100000) / 65536 ≈ 9155 users\&. .sp For high\-density environments with many users and smaller allocations: .sp .if n \{\ .RS 4 .\} .nf SUB_UID_COUNT 4096 SUB_UID_MIN 100000 SUB_UID_MAX 10000000 .fi .if n \{\ .RE .\} .sp This gives: (10000000 \- 100000) / 4096 ≈ 2417 users\&. .RE .PP \fBUNSAFE_SUB_UID_DETERMINISTIC_WRAP\fR (boolean) .RS 4 \fB WARNING: SECURITY RISK \- MAY CAUSE RANGE OVERLAPS AND PRIVILEGE ESCALATION! \fR .sp Only effective when \fBSUB_UID_DETERMINISTIC\fR is set to \fIyes\fR\&. .sp When set to \fIyes\fR (WRAP MODE), allows the deterministic range calculation to wrap around using modulo arithmetic when a UID would overflow the configured subordinate ID space\&. The subordinate ID space is treated as a ring buffer\&. .sp \fBWARNING\fR: Range overlaps can lead to container escapes and privilege escalation\&. For example, with \fBSUB_UID_MIN\fR=100000, \fBSUB_UID_MAX\fR=200000, \fBSUB_UID_COUNT\fR=65536, User A (UID 1000) gets range [100000, 165535] and User B (UID 1001) wraps and overlaps with User A\&. User B\*(Aqs container can now access files from User A\*(Aqs containers\&. .sp Use \fBonly\fR in development, testing, or tightly constrained lab environments\&. .sp When set to \fIno\fR (default), any arithmetic overflow or range exceeding \fBSUB_UID_MAX\fR is a hard error\&. This guarantees non\-overlapping, monotonic allocation\&. .sp The default value for \fBUNSAFE_SUB_UID_DETERMINISTIC_WRAP\fR is \fIno\fR\&. .RE .PP \fBSYS_GID_MAX\fR (number), \fBSYS_GID_MIN\fR (number) .RS 4 Range of group IDs used for the creation of system groups by \fBuseradd\fR, \fBgroupadd\fR, or \fBnewusers\fR\&. .sp The default value for \fBSYS_GID_MIN\fR (resp\&. \fBSYS_GID_MAX\fR) is 101 (resp\&. \fBGID_MIN\fR\-1)\&. .RE .PP \fBSYS_UID_MAX\fR (number), \fBSYS_UID_MIN\fR (number) .RS 4 Range of user IDs used for the creation of system users by \fBuseradd\fR or \fBnewusers\fR\&. .sp The default value for \fBSYS_UID_MIN\fR (resp\&. \fBSYS_UID_MAX\fR) is 101 (resp\&. \fBUID_MIN\fR\-1)\&. .RE .PP \fBUID_MAX\fR (number), \fBUID_MIN\fR (number) .RS 4 Range of user IDs used for the creation of regular users by \fBuseradd\fR or \fBnewusers\fR\&. .sp The default value for \fBUID_MIN\fR (resp\&. \fBUID_MAX\fR) is 1000 (resp\&. 60000)\&. .RE .PP \fBUMASK\fR (number) .RS 4 Die Maske zum Berechtigungsmodus neu erstellter Dateien, siehe \fBumask\fR(2)Falls nicht angegeben, wird 022 verwendet\&. Somit werden die Dateien und Verzeichnisse des Benutzers mit dem Modus 755 beziehungsweise dem Zugriffsmuster rwxr\-wr\-x angelegt\&. .sp \fBuseradd\fR and \fBnewusers\fR use this mask to set the mode of the home directory they create if \fBHOME_MODE\fR is not set\&. .sp It is also used by \fBpam_umask\fR as the default umask value\&. .RE .SH "DATEIEN" .PP /etc/passwd .RS 4 Informationen zu den Benutzerkonten .RE .PP /etc/shadow .RS 4 gesch\(:utzte Informationen zu den Benutzerkonten .RE .PP /etc/group .RS 4 Informationen zu den Gruppenkonten .RE .PP /etc/gshadow .RS 4 gesch\(:utzte Informationen zu den Gruppenkonten .RE .PP /etc/login\&.defs .RS 4 konfiguriert die Shadow\-Hilfsprogramme\&. .RE .PP /etc/pam\&.d/newusers .RS 4 PAM configuration for \fBnewusers\fR\&. .RE .PP /etc/subgid .RS 4 enth\(:alt untergeordnete Gruppenkennungen der einzelnen Benutzer\&. .RE .PP /etc/subuid .RS 4 enth\(:alt untergeordnete Benutzerkennungen der einzelnen Benutzer\&. .RE .SH "SIEHE AUCH" .PP \fBlogin.defs\fR(5), \fBpasswd\fR(1), \fBsubgid\fR(5), \fBsubuid\fR(5), \fBuseradd\fR(8)\&.