Mit useradd können keine Benutzer mehr hinzugefügt werden

Mit useradd können keine Benutzer mehr hinzugefügt werden

Wann immer ich das tue

# useradd -N --gid 1003 -s /bin/ksh --uid <some UID starting with 10027> --home /home/<someuser> <someuser>

useradd weigert sich einfach, Benutzer hinzuzufügen und gibt stattdessen Folgendes aus:

useradd: Can't get unique secondary UID range
useradd: can't find subordinate user range

Und nur um es Ihnen zu sagen: Es /etc/passwdist 9056 Zeilen lang.

Was könnte das Problem sein?

Antwort1

GemäßBenutzer hinzufügen(8), es erstellt einen sekundären UID-Bereich SUB_UID_COUNT, der für jeden Benutzer reserviert ist

SUB_UID_MIN(Zahl),  SUB_UID_MAX(Zahl),  SUB_UID_COUNT(Zahl)

    Sofern /etc/subuidvorhanden, weisen die Befehle useraddund  newusers (sofern der Benutzer nicht bereits über untergeordnete Benutzerkennungen verfügt) jedem neuen Benutzer SUB_UID_COUNTungenutzte Benutzerkennungen aus dem Bereich SUB_UID_MINbis  zu.SUB_UID_MAX

    Die Standardwerte für SUB_UID_MIN, SUB_UID_MAX, SUB_UID_COUNTsind jeweils 100000, 600100000 und 10000.

Sieht aus, als hätten Sie das Standardlimit erreicht und deshalb useraddschlägt der Vorgang fehl.

Antwort2

useraddbeschwert sich, dass es dem neuen Benutzer keinen untergeordneten UID-Bereich zuweisen kann, da der zulässige UID-Bereich erschöpft ist. Wie Sie angegeben haben, haben Sie viele Benutzer in Ihrem System und die konfigurierten Standardwerte login.defskönnen das nicht bewältigen.

Untergeordnete UID/GID-Dateien werden verwendet, um UID/GID-Zuordnungen für Benutzernamensräume einzurichten (siehesubuid(5),subgid(5),newuidmap(1), Und newgidmap(1) ).

In meinem Fall hatte ich über 10.000 UIDs in meinem System und  useraddes trat genau der gleiche Fehler auf. Ich wollte die und Datenbanken nicht useraddverwalten, da ich keine benutzerdefinierten ID-Zuordnungen konfigurieren muss, also habe ich diese Funktion deaktiviert. Dies kann durch Entfernen der und Dateien erfolgen .subuidsubgid/etc/subuid/etc/subgid

Für aktuelle Versionen von Schattendienstprogrammen (seit 4.9oder so), Einstellung SUB_UID_COUNT 0und  SUB_GID_COUNT 0 in Ihrem /etc/login.defsauch funktioniert. Siehelogin.defs(5)für Details.

verwandte Informationen