将一个组中的所有用户添加到另一组中?

将一个组中的所有用户添加到另一组中?

我有一个名为 的组中的一些用户aa,我需要授予他们写入当前文件夹的权限tomcat:tomcatdeploy

最简单的方法是将所有用户tomcatdeploy一一添加到组中。

是否可以说,通过某种方式将组添加到组中,组的成员aa也自动成为组的成员?tomcatdeployaatomcatdeploy

或者这是否试图将 UNIX 权限方案推得太远?

答案1

您没有提到您所在的平台,但是过去 5 年(或者可能更久)内的 Linux 系统除了传统的 Unix 文件系统权限之外还支持 ACL。通过使用 ACL,您可以将第二组添加到具有写访问权限的目录中:

$ setfacl -m group:2ndtomcatdeploy:rwx target_directory

您可以用来getfacl显示 ACL,并且ls -l会在常用符号模式字符串的末尾显示“+”。

答案2

您可以使用该lid命令获取 中的用户列表aa,并循环该列表以将它们添加到tomcatdeploy

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

相关内容