use*_*621 5 permissions bash cron log
我有以下 CRON 任务:
MAILTO="my@email.com"
# Begin Whenever generated tasks for: projectname
30 4 * * * /bin/bash -l -c 'cd /home/deployer/apps/project_production/releases/20150305135322 && bin/rails runner -e production '\''Invoices.run_update'\'' >> /var/log/cron.log 2>&1'
# End Whenever generated tasks for: projectname
Run Code Online (Sandbox Code Playgroud)
但是当我查看从服务器发送到我的电子邮件地址的报告时,只有以下内容:
/bin/bash: /var/log/cron.log: Permission denied
Run Code Online (Sandbox Code Playgroud)
(日志文件路径正确)
我必须为 CRON 作业的日志文件设置哪些权限?
感谢您有一个愉快的一天。
编辑:目录中
没有cron.allow或cron.deny文件/etc。
编辑2;
试过了sudo chmod u+w cron.log,但还是一样。
看起来它无法创建日志文件。检查 /var/log 文件夹的权限。它应该是
ls -l /var/
drwxrwxr-x 18 root syslog 4096 Mar 6 14:30 log
Run Code Online (Sandbox Code Playgroud)
如果它看起来不像第一个以 drwxrwxr-x 开头的文件,请通过输入以下内容更改该文件夹的权限:
sudo chmod 775 /var/log
Run Code Online (Sandbox Code Playgroud)
再次运行 cron 作业。