问题描述
我发现我的 crontab 脚本无法按预期工作,因为它们无法写入/var/log.我尝试执行命令:
I found my crontab scripts do not work as expected because they cannot write on /var/log. I tried executing command:
sudo/usr/bin/php/var/www/html/iPhone/inarrivo/php/rome/process.php >>/var/log/romeLoading.log 2>&1
sudo /usr/bin/php /var/www/html/iPhone/inarrivo/php/rome/process.php >> /var/log/romeLoading.log 2>&1
亲手得到:
-bash:/var/log/romeLoading.log: 权限被拒绝
-bash: /var/log/romeLoading.log: Permission Denied
/var/log 权限为:
/var/log permissions are:
drwxr-xr-x.13 根根 4096 15 前 16.20 .
drwxr-xr-x. 13 root root 4096 15 ago 16.20 .
如果我反过来执行:
sudo touch/var/log/loadRome.log
sudo touch /var/log/loadRome.log
我没有任何错误.
可能是什么问题?
请注意 Apache 没有受到威胁:我从根 crontab 和 shell 调用这些脚本,并使用 sudo 作为测试.
Please note Apache is not at stake: I am calling those scripts from the root crontab and from the shell with sudo as a test.
推荐答案
这是一个权限问题,因为日志文件属于 root
用户并且 apache 运行了 www-data
.试试 chown www-data:www-data/var/log/loadRome.log
.
It's a permissions issue as the log file belongs to root
user and apache runs off www-data
. Try chown www-data:www-data /var/log/loadRome.log
.
这篇关于从 php 脚本登录/var/log 时权限被拒绝的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!