授予组内所有用户 rm、cp、mv、编辑等文件到或出目录的权限

授予组内所有用户 rm、cp、mv、编辑等文件到或出目录的权限

因此我创建了一个可供多个用户使用的目录/SharedDir。此共享目录当前配置如下。

drwxrwsrwx+ 6 root group 4.0K Mar 23 20:40 /SharedDir

此目录中没有直接创建任何文件。我正在使用Gitlab-runnerCI/CD 脚本生成文档并将其传输到此目录中,以供用户稍后查看。构建脚本会生成两个文件以及其他文件夹中的文件。

-rw-rw-r--+ 1 gitlab-runner group 3.5K Mar 23 21:07 data.html
drwxrwsr-x+ 2 gitlab-runner group 4.0K Mar 23 21:07 _directory

通过这个Gitlab-runner脚本,我可以运行我需要的内容并将其传输到共享目录中。Gitlab-runner不需要提升的权限就可以将这些文件/文件夹移动到共享目录中。

但是,像我这样的用户需要提升权限才能删除这些文件/文件夹。此外,如果我手动运行脚本,在 之外Gitlab-runner,我再次需要提升权限才能将它们移动到共享目录中。

我做了什么:

创建组

groupadd group

将所有用户添加到组

usermod -a -G group user1 user2 user3 gitlab-runner

更改目录的组

chgrp group /SharedDir

我还递归设置了/SharedDir 的权限

chown -R mainUser:group /SharedDir    
chmod -R a+wr /SharedDir

有效的方法:

作为用户,我可以生成文件/文件夹并将文件/文件夹移动到其中SharedDir而无需sudo。当我运行Gitlab-runner它时,可以删除任何用户生成的文件/文件夹,而无需使用sudo', and add new files/folders to theSharedDir`

什么不起作用

任何由其他用户生成的文件夹Gitlab-runner如果不使用就无法删除sudo

相关内容