Oli*_*Oli 8 filesystem permissions multi-user
我有一个目录,我希望系统上的多个用户拥有该目录。也就是说,我希望任何运行的应用程序都oli认为这些文件属于oli,就像任何运行的应用程序jim都会这么认为。这与仅仅授予权限不同,因为我有一个所有权很重要的问题。我信任这种情况下的所有用户。
我立即想到的是某种可以透明地转换 ID 的绑定安装,我确信有一种方法可以使用熔断器来完成此操作,但快速(内核级别)对我来说更可取。
需要明确的是,我并不是在寻找实际的多重所有权,我只是希望多个用户看到这些文件是他们的。据我所知,Linux 中有几个不同的层可以将用户 ID 从一个层映射到另一个层,因此其中一个层可能会完成这里的工作。
Oli*_*Oli 12
找出完全内核内 ID 映射的挂载选项。这允许您使用不同的所有者/组在其他地方重新挂载任何目录。
sudo mount --bind -o "X-mount.idmap=u:1000:1002:1 g:1000:1002:1" /home/oli/dir /home/other/dir
Run Code Online (Sandbox Code Playgroud)
两者oli和other用户都可以写入同一组文件,认为他们是所有者。这也可以相当容易地保存到 fstab。
另一个选项是bindfs/FUSE:
sudo bindfs --map=oli/other:@oli/@other /home/oli/dir /home/other/dir
Run Code Online (Sandbox Code Playgroud)
这提供了相当透明的所有权。该other帐户将这些文件视为自己的文件。我预计这会比内核内映射慢。
Linux 不支持多个用户拥有文件系统对象。它们必须只有一个所有者。
这听起来像是一个 XY 问题。您认为解决方案是拥有多个所有者,但您没有充分解释问题(您认为应用程序关心文件所有权;为什么?)这可能有其他解决方案,例如组所有权、在容器中运行、更改用户应用程序运行方式等
| 归档时间: |
|
| 查看次数: |
886 次 |
| 最近记录: |