在 Linux 上向用户公开被阻止目录中的文件吗?

在 Linux 上向用户公开被阻止目录中的文件吗?

我在我的(虚拟根)服务器上运行一个 Web 服务器,允许一位朋友托管自己的页面。该页面位于他的主目录中,Apache 的配置方式是VirtualHost将该目录用作DocumentRoot。该目录的 access.log 和 error.logVirtaulHost位于特定文件/var/log/apache2VirtualHost

/var/log/apache2所有这些都运行良好 - 但我的朋友当然没有权限阅读里面的任何内容。

我怎样才能授予他对这些文件的读取权限而不暴露其他任何内容/var/log/

(当然,他的主目录中的 naiveln -s /var/log/apache2/friend.access.log没有起作用......)

答案1

要在 Unix 系统上读取文件,您需要x所有级别的父目录的权限位以及r该文件的权限位。例如,在您的例子中,除了在 上,friend还需要x在 上/var/var/log和上。如果您不想授予所有用户读取文件的权限,即使他们拥有该文件的权限并知道确切路径,您也可以通过 ACL 执行此操作。/var/log/apache2r/var/log/apache2/friend.access.log/var/logr

相关内容