我正在使用 encfs 并且到目前为止我对它非常满意,但我有一个问题可能有点烦人。
说我最喜欢的挂载点是 ~/encfsmnt。我的问题是,如果我的 encfs 尚未安装,那是不明显的。我可能会很高兴地将数据写入 ~/encfsmnt 目录,而不是将 encfs 加密的数据写入 encfs 下层目录。
解决这个问题的显而易见的方法是将 ~/encfsmnt 的文件模式设置为 400 (dr--------),但显然 encfs 要求挂载点目录是可写的,以便挂载成功(我收到“fusermount:用户对挂载点没有写访问权限”错误消息)。
有没有办法让我的挂载点不可写,除非 encfs 实际挂载到它?
小智 5
恐怕它是可写的还是不可写的。为了使它对某个进程(fusermount)可写,您可能只需要一个 LSM(Apparmor、SELinux 或类似的)。当然,这需要 root 访问权限。
更简单的解决方案可能是集成chmod u+w ~/encfsmnt到 fusermount 调用中(如果您没有 GUI,请为您执行此操作)。创建一个小脚本,在调用 fusermount 后执行此操作(并在 umount 后删除写访问权限)。
或者更改挂载点:将 ~/encfsmnt.mp 设为挂载点(如果可能,否则习惯写入不同的目标)。在挂载的 ~/encfsmnt.mp 中,您创建了一个目录,您的所有(新)内容都在其中: ~/encfsmnt.mp/new 您在未挂载的 ~/encfsmnt.mp 中创建了相同的目录。但是你写保护那个。
然后将 ~/encfsmnt 设为 ~/encfsmnt.mp/new 的符号链接。如果未挂载,则该目录是写保护的,如果已挂载,则它是可写的。当然,如果您 cd 进入该目录,这将不起作用。
嗯,有趣的想法:如果 ~/encfsmnt 具有写入权限但没有执行权限,则 fusermount 工作吗?
| 归档时间: |
|
| 查看次数: |
1512 次 |
| 最近记录: |