授予特定用户对我拥有的Linux的完全访问权限

时间:2020-05-27 17:49:29

标签: linux

在工作中,我们有由公司设立的小组,特定用户属于特定小组。我所有的团队都在同一个小组中,但是我们仍然无法访问文件/文件夹。我们通常遇到一个问题,即有人开始仿真,将数据/输出写入目录,而在离开之前,他们忘记了对文件夹进行chmod设置。然后发生的事情是,团队的其余成员可以查看和读取任何内容,但不能更改文件夹/文件。我们无法制作新文件或编辑当前文件。

我正在寻找一种使我的团队成员能够访问我拥有的任何文件夹/文件的方法。除了建立群组外,还有其他方法吗?我可以在某个地方存储一个列表,该列表允许用户x, y, and z访问me拥有的任何内容吗?我希望这绕过我的团队,而忘记了chmod文件夹。

2 个答案:

答案 0 :(得分:2)

您可以使用setfacl -dm "u:myuser:rwX" /path/to/output/dir为任意数量的特定用户提供对在特定目录中创建的所有文件的读/写访问权限。您可以类似地使用g:mygroup:rwX来访问组。

您可以将umask 002放在/etc/profile~/.bashrc中,以使所有新创建的文件组在默认情况下都是可读写的;或者如果不够用,可以将umask 000放在围绕模拟的包装脚本,默认情况下使所有模拟输出世界都可写入(不影响您的其他文件)。

最后,您可以编写一个名为fixpermissions的脚本以根据任意逻辑正确设置权限,并向用户sudo授予运行此脚本的权限(而没有其他权限),以此来模糊它。如果您不是管理员,则脚本只能更改您拥有的文件的权限。

这样的脚本可以在模拟后立即(通过包装脚本),登录,注销或定期(通过cron)按需运行。

答案 1 :(得分:1)

例如,可以使用SELinux访问控制https://wiki.centos.org/HowTos/SELinux或需要高度复杂的用户来管理和操作的各种其他替代ACL。

但是,仅使用组可能会更容易。