Meus trabalhos cron são calculados uma hora depois em comparação com o tempo do servidor. Eu não entendo o que está acontecendo.
Minha configuração é a seguinte:
Horário do servidor :
Europe/Paris
Em / etc / default / cron, adicionei a seguinte linha:
TZ="Europe/Paris"
Apesar disso, o trabalho cron é iniciado uma hora depois da hora do servidor. O que é realmente complicado, é que, se eu pedir ao cron para tocar a instrução "date", ela fornecerá a data do servidor (a boa!).
Não tenho ideia de como resolver esse problema; Eu tenho lido alguns nos fóruns, mas não achei nada interessante.
O que você acha ?
/etc/timezone
? Você modificou/etc/timezone
mais recentemente do que ocron
processo foi iniciado? Você já tentou/etc/init.d/cron restart
?Respostas:
(Copiar o meu comentário como resposta, uma vez que acabou por ser a solução; adivinhei.)
Portanto, os trabalhos cron estão sendo agendados no UTC (
Europe/Paris
a uma hora de diferença do UTC).A página de manual do cron Vixie diz:
O que há
/etc/timezone
? Você modificou/etc/timezone
mais recentemente do que o processo cron foi iniciado? Você tentou?
fonte
Algumas distribuições, como o Fedora, fornecem um mecanismo no qual você pode configurar
CRON_TZ=
para substituir seu fuso horário padrão.Do Fedora
man 5 crontab
Algo assim:
fonte
Wikipedia diz
Então, talvez o seu ID de login tenha uma configuração TZ diferente da configuração do sistema TZ?
fonte
Reiniciar o cron era o que eu precisava, mas para mim o comando foi
fonte
Acabei de descobrir isso no Ubuntu 14/16. Funcionou perfeitamente para mim.
Etapas (sudo implícitas):
cat /etc/timezone
rm -fv /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Kolkata /etc/localtime
apt install -y --reinstall tzdata
/etc/init.d/rsyslog restart
tail -f /var/log/syslog
cat /etc/timezone
fonte
cron
reiniciado?