在位于不同国家(我没有root / sudo访问权限)的Debian 9远程服务器上,我试图在我的本地时区设置以下3个不同的crontab任务。
* / 10 * * * * / usr / bin / env TZ = Asia / Karachi / home / smo / pg / pg --silent -co pg_D.cfg
00 01 * * * / usr / bin / env TZ = Asia / Karachi / home / smo / pg / pg --silent -co pg_M.cfg
59 23 * * * / usr / bin / env TZ = Asia / Karachi / home / smo / pg / pg --silent -co pg_Y.cfg
(“ pg_D / pg_M / pg_Y.cfg”文件生成带有时间戳的html文件)
第一个任务运行正常,并且html输出包含本地时间戳记,但是任务2和3根本没有运行。 我还尝试通过在每个crontab任务上添加CRON_TZ = Asia / Karachi来对CRON_TZ进行尝试,但是没有运气。
我想知道为什么任务1运行但其他两个失败? 我在这里想念什么吗?
答案 0 :(得分:0)
我已经解决了问题 实际上,这两个作业都是根据远程服务器时间而不是本地时间运行的。
问题在于时间设置。 使用上述方法在不同时区设置cronjob时,我们必须设置远程服务器时间而不是本地时间。
我的远程服务器处于UTC -5,所以我更改了时间... 来自
59 23 * * * /usr/bin/env TZ=Asia/Karachi /home/smo/pg/pg --silent -co pg_D.cfg
收件人
59 18 * * * /usr/bin/env TZ=Asia/Karachi /home/smo/pg/pg --silent -co pg_D.cfg
现在一切正常。