Wal-E cron 作业未执行

Wal-E cron 作业未执行

我有一个cron作业设置,假设要运行 wal-e backup-push 命令。如果通过命令行手动运行,该命令可以正常工作。当然是以用户postgres身份运行。所以我设置了一个 cron 作业以在用户下运行它postgres。它运行但不执行任何操作。cron 日志显示作业已完成。

我是否遗漏了某些显而易见的东西?任何建议或帮助都非常好。

0 2 * * * source ~/.bashrc && envdir /etc/wal-e.d/env wal-e backup-push /db01/pg

我也试过了。

0 2 * * * bash -l -c 'source ~/.bashrc && envdir /etc/wal-e.d/env wal-e backup-push /db01/pg'

Cron 日志消息:

CROND[31371]: (postgres) CMD (bash -l -c 'source ~/.bashrc && envdir /etc/wal-e.d/env wal-e backup-push /db01/pg')

CROND[31655]: (postgres) CMD (/usr/bin/envdir /etc/wal-e.d/env /usr/local/bin/wal-e backup-push /db01/pg)

答案1

这个命令是最终的解决方案。原来是我使用了错误的 envdir 路径。登录到 shell 后,我使用 which envdir 找到了正确的路径。

source ~/.bashrc; /usr/local/bin/envdir /etc/wal-e.d/env wal-e backup-push /db01/pg

答案2

不起作用。尝试了 cron 中的以下选项。

/usr/local/bin/envdir /etc/wal-ed/env /usr/local/bin/wal-e 备份推送 /pg/data

bash -c "/usr/local/bin/envdir /etc/wal-ed/env /usr/local/bin/wal-e 备份推送 /pg/data"

源 ~/.bashrc && envdir; /usr/local/bin/envdir /etc/wal-ed/env /usr/local/bin/wal-e 备份推送 /pg/data

相关内容