adduser nutzt ja /etc/adduser.conf, die ich unverändert belassen habe. Ich verstehe folgendes nicht:
ich erstelle erstmal eine Gruppe namens "testgruppe2" an:
Code: Alles auswählen
# addgroup testgruppe2
Lege Gruppe »testgruppe2« (GID 1004) an ...
Fertig.
Code: Alles auswählen
# adduser --gid 1004 max1
Lege Benutzer »max1« an ...
Lege neuen Benutzer »max1« (1011) mit Gruppe »testgruppe2« an ...
Erstelle Home-Verzeichnis »/home/max1« ...
Kopiere Dateien aus »/etc/skel« ...
Geben Sie ein neues UNIX-Passwort ein:
Geben Sie das neue UNIX-Passwort erneut ein:
passwd: Passwort erfolgreich geändert
Benutzerinformationen für max1 werden geändert.
Geben Sie einen neuen Wert an oder drücken Sie ENTER für den Standardwert
Vollständiger Name []:
Zimmernummer []:
Telefon geschäftlich []:
Telefon privat []:
Sonstiges []:
Sind die Informationen korrekt? [J/n] j
Code: Alles auswählen
cat /etc/group
Meine erste Frage: Wieso taucht er denn hier nicht auf? Nehmen wir an ich möchte wissen, welche Benutzer diese testgruppe2 beinhaltet. Ein einfaches "cat /etc/group" hilft mir hier nicht weiter. Ich müßte erst durch Umwege und Betrachten der Datei /etc/passwd heraussuchen, welche Benutzer die ID 1004 als ihre primäre Gruppe eingetragen haben. Irgendwie blöd, wie ich finde.testgruppe21004:
Nun habe ich einfach mal testweise folgendes ausgeführt:
Code: Alles auswählen
# adduser max1 testgruppe2
Füge Benutzer »max1« der Gruppe »testgruppe2« hinzu ...
Benutzer max1 wird zur Gruppe testgruppe2 hinzugefügt.
Fertig.
Meine zweite Frage: Versuche ich nun den vorherigen Zustand wiederherzustellen, indem ich einfach den User max1 aus der testgruppe2 wieder zu entfernen, dann schlägt das fehl:testgruppe21004:max1
Code: Alles auswählen
# deluser max1 testgruppe2
/usr/sbin/deluser: Sie dürfen den Benutzer nicht aus seiner primären Gruppe entfernen.
Mein Wunsch wäre, dass ich mit dem Adduser Befehl einen User erstellen kann und seine Gruppenzugehörigkeit zu einer Gruppe mit "cat /etc/group" ersichtlich wird. Er soll in der Gruppe auch wirklich auflistbar sein. Ich möchte aber nicht die Option add_extra_groups hierzu verwenden müssen, denn diese Konfiguration müsste man in die /etc/adduser.conf machen müssen. Das will ich aber nicht, aus folgendem Grund:
hätte ich fünf verschiedene Applikationen, aus denen ich heraus neue User erstelle lasse, und jede einzelne Applikation sollte z.B. folgendes ausführen:
app1 --> adduser --ingroup gruppe1 testuser
app2 --> adduser --ingroup andregruppe maxmustermann
app3 --> adduser --ingroup undsoweiter foobar
dann müsste ich das zwangsweise wie folgt lösen:
- ich müßte die /etc/adduser.conf so oft kopieren in z.B. /etc/adduser_fuer_app1.conf, /etc/adduser_fuer_app2.conf, usw...
- dann müsste ich in der /etc/adduser_fuer_app1.conf die Zeilen aktivieren EXTRA_GROUPS=gruppe1 und ADD_EXTRA_GROUPS=1
- analog dazu für die app2, müsste ich die /etc/adduser_fuer_app2.conf bearbeiten, und reinschreiben EXTRA_GROUPS=andregruppe, und so weiter und so fort....
- und als finalen Schritt beim Aufruf aus der jeweiligen Applikation folgende Option adduser ...blabla... --conf /etc/adduser_fuer_appx.conf
Nur so würde dann der erstellte User auch in dem Listing von /etc/group auftauchen. Kann aber umständlich aussehen wie man sieht, und auch wenn das nur ein fiktives Beispiel ist, möchte ich gerne wissen, warum das so gemacht wurde. Was für ein Sinn steckt also dahinter?
Ich hab es auch mit dem eher unpassenden wrapper useradd versucht:
Code: Alles auswählen
useradd -g testgruppe2 -M -N -s /bin/false max2
Wieso also gibt adduser überhaupt erst die Möglichkeit durch --gid oder --ingroup eine Gruppenzugehörigkeit, bzw. Gruppenteilnahme zu erstellen, listet aber diese nicht in /etc/group richtigerweise auf? In meinen Augen ist das irgendwie unsinnig. Bitte klärt mich auf, was steckt dahinter?
![Shocked 8O](./images/smilies/icon_eek.gif)
DANKE