Alle Benutzer in einer Gruppe zu einer anderen Gruppe hinzufügen?


8

Ich habe einige Benutzer in einer Gruppe namens aaund ich muss ihnen die Rechte geben, in einen Ordner zu schreiben, der gerade ist tomcat:tomcatdeploy.

Der einfachste Weg, dies zu tun, besteht darin, alle Benutzer einzeln zur tomcatdeployGruppe hinzuzufügen .

Kann man sagen, dass Mitglieder einer Gruppe aaauch automatisch Mitglieder sind, tomcatdeployindem man die aaGruppe irgendwie zur Gruppe hinzufügt tomcatdeploy?

Oder versucht das, das UNIX-Berechtigungsschema zu weit zu treiben?

Antworten:


7

Sie können den lidBefehl verwenden, um eine Liste der Benutzer abzurufen aa, und die Schleife über dieser Liste, um sie hinzuzufügen tomcatdeploy:

for u in $(lid -g -n aa); do usermod -a -G tomcatdeploy $u; done

for u in $(lid -g -n aa); do usermod -a -G tomcatdeploy $u; done(Ich nehme an, Sie meinten $uin usermod, nicht nur u)
— asoundmove

Guter Fang! Ich habe gerade den Code in meiner Antwort korrigiert.
— Justin Ethier

10

Sie haben nicht erwähnt, auf welcher Plattform Sie sich befinden, aber ein Linux-System aus den letzten 5 Jahren (oder wahrscheinlich mehr) unterstützt zusätzlich zu den herkömmlichen Unix-Dateisystemberechtigungen ACLs. Mithilfe von ACLs können Sie dem Verzeichnis mit Schreibzugriff die zweite Gruppe hinzufügen:

$ setfacl -m group:2ndtomcatdeploy:rwx target_directory

Sie können getfacldie ACLs anzeigen und ls -lam Ende der üblichen Zeichenfolge im symbolischen Modus ein '+' anzeigen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.