将文件设置为只读,除非通过符号链接路径访问

时间:2018-11-29 05:04:15

标签: linux macos file-permissions symlink readonly

说我有一个像这样的文件夹树:

root/
  ro/
  symlink-to-ro/

我的问题有两个方面:

(a)可以使ro目录中的所有文件均为只读,但是如果通过符号链接访问文件,则使它们可写?

(b)与(a)相反:只有直接访问文件,才可以使文件可写吗?

这仅适用于* nix / MacOS

1 个答案:

答案 0 :(得分:1)

不。权限分配给索引节点,而不分配给目录条目;因此,无论您用于访问文件的路径如何,都将检查同一组权限。

编辑:将其刮擦。我只记得 是一种方法:虽然文件和文件夹没有权限,但是 mounts 可以设置为只读。如果您使用的是Linux,那么read-only bind mount正是您所需要的。 AFAIK OSX无法做到这一点,因此您可以使用NFS mount(不太好)来伪造它。