Eine gültige Linux-Gruppe fehlt in / etc / group, kann aber in der getent-Gruppe gefunden werden

391
phray2002

Ein seltsames Problem. Ich versuche, einen Benutzer (z. B. myuser) zu einer Gruppe (linuxadmins) hinzuzufügen, erhalte jedoch folgende Fehlermeldung.

sudo usermod -a -G linuxadmins myuser usermod: group 'linuxadmins' does not exist 

Dann versuche ich, Fehler zu beheben, aber die gefundene Gruppe wurde nicht in der Gruppendatenbankdatei gefunden, kann aber durch getentSuche zurückgegeben werden. Sie finden die 1. Zeile ( linuxadmins: x: 1000: some_ids ) der Rückgabe und den Speicherauszug von / etc / group. Hat jemand eine Idee, woher kommt diese Gruppe?

[my_sit@myhost /]$ getent group linuxadmins:x:1000:some_ids root:x:0:my_sit,other_sit bin:x:1:bin,daemon daemon:x:2:bin,daemon  [my_sit@myhost /]$ cat /etc/group root:x:0:my_sit,other_sit bin:x:1:bin,daemon daemon:x:2:bin,daemon 
0

1 Antwort auf die Frage

0
grawity

/etc/group ist nicht die einzige Quelle für Gruppeninformationen.

  1. Alle Suchvorgänge durchlaufen zuerst den nscd- Cache-Daemon. Wenn nscd eine Gruppe, die später entfernt wurde, zwischengespeichert hat, wird sie trotzdem angezeigt.

  2. Dann werden die konfigurierten Module /etc/nsswitch.confverwendet. Das "files" -Modul liest aus / etc / group, aber es gibt möglicherweise noch andere wie "ldap", "nis", "sss" (AD / LDAP) usw.

Sie haben diesen Eintrag wahrscheinlich entweder von einer Netzwerkquelle oder einem Cachemodul. Testen Sie die konfigurierten Module (aus nsswitch.conf) nacheinander, bis Sie die Gruppe gefunden haben:

getent -s files group linuxadmins getent -s ... group linuxadmins