crontab 不执行脚本

crontab 不执行脚本

定时任务:

*/5 * * * * /home/owner/scripts/upload_main.sh

上传_main.sh:

#!/bin/bash
flock -xn /home/owner/locks/upload.lck -c /home/owner/scripts/upload_silent.sh

upload_silent.sh:

#!/bin/bash
rclone move /home/owner/gdrive/Movies/ gdrive:movies --transfers=6  --no-traverse --quiet
rclone move /home/owner/gdrive/"TV Shows"/ gdrive:tv --transfers=6  --no-traverse --quiet
# remove empty directories
find /home/owner/gdrive/Movies/* -empty -type d -delete 2>/dev/null
find /home/owner/gdrive/"TV Shows"/* -empty -type d -delete 2>/dev/null

我的 crontab 不执行 upload_main.sh 脚本,但运行脚本独立工作。 grep CRON 显示 cron 正在运行,没有任何错误。

我使用的是非 root 用户帐户 ubuntu 14.04。

答案1

由于您没有将 cronjob 的输出重定向到>/dev/null 2>&1(这对于调试来说很好),因此输出应该“邮寄”到您的用户帐户。检查/var/mail以读取您的消息并查找 cron 输出。您应该在那里找到错误。

答案2

如果 crontab 末尾有一个空行,它可能会阻止它执行。

我知道这不是这里的问题,但当我遇到同样的问题时,这就是我的答案!

答案3

发现问题,我不得不使用 rclone 的完整路径:/usr/local/bin/rclone

相关内容