![Mit useradd können keine Benutzer mehr hinzugefügt werden](https://rvso.com/image/76429/Mit%20useradd%20k%C3%B6nnen%20keine%20Benutzer%20mehr%20hinzugef%C3%BCgt%20werden.png)
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/passwd
ist 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/subuid
vorhanden, weisen die Befehleuseradd
undnewusers
(sofern der Benutzer nicht bereits über untergeordnete Benutzerkennungen verfügt) jedem neuen BenutzerSUB_UID_COUNT
ungenutzte Benutzerkennungen aus dem BereichSUB_UID_MIN
bis zu.SUB_UID_MAX
Die Standardwerte für
SUB_UID_MIN
,SUB_UID_MAX
,SUB_UID_COUNT
sind jeweils 100000, 600100000 und 10000.
Sieht aus, als hätten Sie das Standardlimit erreicht und deshalb useradd
schlägt der Vorgang fehl.
Antwort2
useradd
beschwert 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.defs
kö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 useradd
es trat genau der gleiche Fehler auf. Ich wollte die und Datenbanken nicht useradd
verwalten, da ich keine benutzerdefinierten ID-Zuordnungen konfigurieren muss, also habe ich diese Funktion deaktiviert. Dies kann durch Entfernen der und Dateien erfolgen .subuid
subgid
/etc/subuid
/etc/subgid
Für aktuelle Versionen von Schattendienstprogrammen (seit 4.9oder so), Einstellung SUB_UID_COUNT 0
und SUB_GID_COUNT 0
in Ihrem /etc/login.defs
auch funktioniert. Siehelogin.defs(5)
für Details.