在我的Debian 9远程服务器上,该服务器位于不同的国家/地区(我没有root/sudo访问),我正在尝试在本地时区设置以下3个不同的crontab任务。
-
*/10 * * * */usr/bin/env tz = asia/karachi/home/smo/pg/pg/pg -silent -co pg_d.cfg
-
00 01 * * */usr/bin/env tz = asia/karachi/home/smo/pg/pg/pg -silent -co pg_m.cfg
-
59 23 * * */usr/bin/env tz = asa/karachi/home/smo/pg/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运行但其他两个失败?我在这里错过了什么吗?
我解决了问题实际上,这两个作业都是根据远程服务器时间运行的,但不是我当地的时间。
问题与时间设置有关。使用上述方法在不同时区设置Cronjob时,我们必须设置远程服务器时间而不是本地时间。
我的远程服务器在UTC -5中,所以我更改了时间...来自
59 23 * * * /usr/bin/env TZ=Asia/Karachi /home/smo/pg/pg --silent -co pg_D.cfg
to
59 18 * * * /usr/bin/env TZ=Asia/Karachi /home/smo/pg/pg --silent -co pg_D.cfg
现在一切都很好。