
Eu tenho um script definido no cronjob para ser executado às 00 horas, mas ele é executado 5 horas antes, ou seja, às 19h locais do dia anterior. Quero dizer, ele deveria funcionar às 00 horas locais, mas funcionou às 00 horas UTC/GMT.
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
Não há nenhum arquivo chamado /etc/default/cron no meu sistema. MASCRON FUNCIONA COM HORA LOCAL APÓS REINÍCIO DO CRON DAEMON. Portanto, o problema é antes da reinicialização, ou seja, depois que o sistema é instanciado/criado, o cron leva o tempo UTC, mas quando o cron é reiniciado em qualquer nó, ele funciona bem com a hora local. É algo como se o cron já tivesse iniciado com o fuso horário padrão (UTC) antes do link simbólico de /etc/localtime ser definido como /usr/share/zoneinfo/America/Toronto? Se sim, como posso alterar o fuso horário antes do início do cron?
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
Eu tentei receber ajuda dehttps://askubuntu.com/questions/54364/how-do-you-set-the-timezone-for-crontabehttps://serverfault.com/questions/791713/what-time-zone-is-a-cron-job-using#:~:text=Cron%20job%20uses%20the%20server's,the%20date%20command%20in %20 terminal.mas eles não poderiam ser úteis.
Responder1
Se você não definiu ohardwarehora de combinarsistemahora, então o cron vai funcionarhardwaretempo
Pessoalmente, nunca executo servidores emqualquer coisamasUTC - usando a hora local dequalquero formulário fica muito complicado ao gerenciar mais do que algumas caixas de hobby
Já estive em ambientes executando até meio milhãoservidorendpoints (sem falar em desktops).
Não use a hora local!