Ubuntu 11.10 服务器
我有一个用户bob
,他的主目录是/home/sites/bob
。其中有目录public_html
和logs
。
Apache 在用户 下运行www-data
。bob
的主组是www-data
。 Apache 更新目录中的access.log
和。 这两个日志文件归 拥有并具有 权限。error.log
logs
root:root
644
用户bob
登录到可以正常工作的 FTP 服务器。问题是bob
可以删除或覆盖这两个日志文件。我需要 Apache 能够写入日志,并且只能bob
读取日志 - 不能覆盖或删除日志。如何做到这一点?
我尝试过的:
cd /home/sites/bob
chown www-data:www-data logs
chmod 644 logs
我期望这个能起作用,因为它应该给予 Apache 写权限,而www-data
组(即bob
用户)只给予读权限。实际发生的是,在 FTP 会话中bob
可以看到logs
目录列表,但他无法打开它,当他尝试切换到时logs
,错误是:
命令:CWD 日志
响应:550 日志:没有此文件或目录
错误:无法检索目录列表
所以我的问题是如何授予 Apache ( www-data
)写权限logs
但只授予 读取权限(而不能授予 删除权限)bob
?
答案1
您需要授予logs目录的执行权限,否则用户无法进入该目录。
chmod 754 logs/