
Ich habe ein Skript in Cronjob so eingestellt, dass es um 00 Uhr ausgeführt wird, aber es wird 5 Stunden früher ausgeführt, d. h. um 19 Uhr Ortszeit des Vortages. Ich meine, es sollte um 00 Uhr Ortszeit ausgeführt werden, aber es wurde um 00 Uhr UTC/GMT ausgeführt.
timedatectl output
===================
Local time: Wed 2020-12-02 01:33:31 EST
Universal time: Wed 2020-12-02 06:33:31 UTC
RTC time: Wed 2020-12-02 06:33:31
Time zone: America/Toronto (EST, -0500)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: no
Last DST change: DST ended at
Sun 2020-11-01 01:59:59 EDT
Sun 2020-11-01 01:00:00 EST
Next DST change: DST begins (the clock jumps one hour forward) at
Sun 2021-03-14 01:59:59 EST
Sun 2021-03-14 03:00:00 EDT
ls -lrt /etc/localtime output
================================
lrwxrwxrwx. 1 root root 35 Nov 24 11:43 /etc/localtime -> /usr/share/zoneinfo/America/Toronto
date output
============
Wed Dec 2 01:42:28 EST 2020
Auf meinem System gibt es keine Datei mit dem Namen /etc/default/cron. ABERCRON LÄUFT MIT LOKALER ZEIT NACH DEM NEUSTART DES CRON-DAEMONS. Das Problem besteht also darin, dass Cron vor dem Neustart, also nachdem das System instanziiert/erstellt wurde, die UTC-Zeit benötigt, aber wenn Cron auf einem beliebigen Knoten neu gestartet wird, läuft es mit der Ortszeit einwandfrei. Ist es so, dass Cron bereits mit der Standardzeitzone (UTC) gestartet wurde, bevor der symbolische Link von /etc/localtime auf /usr/share/zoneinfo/America/Toronto gesetzt wurde? Wenn ja, wie kann ich die Zeitzone ändern, bevor Cron startet?
hostnamectl output
==================
Static hostname: abcxyz-0
Icon name: computer-vm
Chassis: vm
Machine ID: 88d24fe7c825442dbfd3b56fd0b24980
Boot ID: 384ea93dcb604bb2ac5bec074539a7cb
Virtualization: kvm
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-1160.el7.x86_64
Architecture: x86-64
Ich habe versucht, Hilfe anzunehmen vonhttps://askubuntu.com/questions/54364/wie-stellen-Sie-die-Zeitzone-für-crontab-einUndhttps://serverfault.com/questions/791713/what-time-zone-is-a-cron-job-using#:~:text=Cron%20job%20uses%20the%20server's,the%20date%20command%20in%20terminal.aber sie konnten nicht nützlich sein.
Antwort1
Wenn Sie dieHardwareZeit zum AbgleichenSystemZeit, dann wird cron abarbeitenHardwareZeit
Persönlich betreibe ich nie Server inirgendetwasAberUTC - unter Verwendung der lokalen Zeit vonbeliebigDas Formular wird sehr kompliziert, wenn Sie mehr als ein paar Hobbyboxen verwalten
Ich war in Umgebungen mit bis zu einer halben MillionServerEndpunkte (geschweige denn Desktops).
Verwenden Sie nicht die Ortszeit!