问题描述
在用 crontab 定时备份 gitlab 时, 发现任务总是不成功. 😱😱😱
命令如下
1 | 0 0 * * * /root/docker/gitlab/backup-gitlab.sh >> /root/docker/gitlab/backup-gitlab.log 2>&1 |
测试后发现日志总是没有任何输出, 说明这个命令没有被执行. 🤔🤔🤔
随便写了条命令测试
1 | * * * * * echo "`date`" > /root/crontest.log |
发现有输出…. 😲😲😲
那么说明 crontab 确实工作了…. 😵😵😵
沉思…. 🤔🤔🤔
解决方案
虽然我不太清楚是什么原因, 但是当我把以下配置加入 crontab 后他开始工作了. 😄😄😄
1 | SHELL=/bin/bash |
也许是因为显式指定了 shell, 以及一些其他的一些参数, 导致可以正常工作, 因为我之前一直怀疑是权限的问题. 🤣🤣🤣
参考连接