Apache记录其他用户的读取权限


23

我们有几个维护系统的开发人员,我希望他们能够轻松读取/ var / log / httpd中的日志文件,而无需root用户访问权限。我为“其他”用户设置了读取权限,但是当我在日志文件上运行tail时,得到的权限被拒绝:

[root@ourserver httpd]# chmod -R go+r /var/log/httpd
[root@ourserver httpd]# ls -la
drwxr--r--  13 root root 4096 Oct 25 03:31 .
drwxr-xr-x.  6 root root 4096 Oct 20 03:24 ..
drwxr-xr-x   2 root root 4096 Oct 20 03:24 oursite.com
drwxr-xr-x   2 root root 4096 Oct 20 03:24 oursite2.com
-rw-r--r--   1 root root    0 May  7 03:46 access_log
-rw-r--r--   1 root root 3446 Oct 24 22:05 error_log

[me@ourserver ~]$ tail -f /var/log/httpd/oursite.com/error.log
tail: cannot open `/var/log/httpd/oursite/error.log' for reading: Permission denied

也许我缺少有关权限如何工作的信息,但找不到任何简单的答案。


2
我研究了几篇文章,试图根据错误找到解决方案(包括Apache的文档)。那是我在这里发布的唯一原因。我不知道为什么这被否决了。我必须张贴我研究过的网站吗?根据答案,似乎有些关于Linux的东西我不太了解,但是在阅读的文章中并未提及此特定属性。
user2344668 2013年

1
[me@ourserver ~]$ tail -f /var/log/httpd/oursite.com/error.log<--那么的权限是什么/var/log/httpd/oursite.com/error.log-这将是极其相关的。(还请注意下面约书亚的回答
voretaq13年

7
@ voretaq7和其他-像这样的问题被否决并结束,这很荒谬。-让我们直接说:您应该知道答案才能正确提出问题?我懂了。作为一名需要向他人提供对这些日志的非root用户访问权限的C ++和PHP程序员,我想我...应该为自己感到羞愧,因为他不知道如何做到这一点?我现在把头垂在一个角落里。实际上,它说的问题不在于专业系统管理。我知道-作为一名管理我的客户系统的PHP程序员,我是...虚假的。谢谢!
Dan Nissenbaum 2014年

3
Stackoverflow和朋友很烂。纳粹党派的关闭与否定正在摧毁它。
Lothar

2
imo,这似乎是严厉的近距离投票。如果这是ServerFault的OT,人们应该从哪里找到答案?无论如何,感谢Google,在关闭之前给出的答案仍然很有帮助。
埃文·多诺万

Answers:


26

目录(如/ var / log / httpd)需要读取和执行权限才能被遍历。因此,当您将“ r”添加到目录中时,它只允许世界看到其内容,而不能进入该目录并继续进入其他目录。

尝试 chmod -R go+rX /var/log/httpd


2
在此命令中仅需注意的一点是,您不需要-R开关,因为您正在更新目录而不是文件。只是分享一下...命令将是:chmod go+rX /var/log/httpd
Matija
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.