왜 cronjobs가 잘못된 시간에 실행됩니까? 4 * * * 명령 그들은

우분투 서버에서 매일 cronjobs를 실행하도록 설정했습니다.

예. 0 4 * * * 명령

그들은 8 시간 일찍 달리는 것을 제외하고는 달리고 있습니다. 서버를 설정할 때 원래 UTC 시간으로 설정되었습니다. 나는 도망 sudo dpkg-reconfigure tzdataUTC 뒤에 6시간입니다 CST에 서버를 설정할 수 있습니다. 흥미롭게도 UTC로 8 시간 뒤인 PST에 있지만 서버가 어떻게 알 수 있는지 알 수 없습니다.

명령을 실행하면 date시간이 CST로 표시됩니다.

시간이 잘못 구성된 곳이 있어야합니다. 이 문제를 어디에서 해결할 수 있습니까?



답변

시간대를 변경 한 후 cron을 다시 시작한 것을 기억하십니까? 그렇지 않은 경우 cron은 원래 시작된 시점부터 여전히 표준 시간대에 대한 오래된 개념을 가질 수 있습니다.

꼭 필요한 것은 아니지만 표준 시간대를 변경 한 후 컴퓨터를 다시 부팅하는 것이 좋습니다. 서버의 표준 시간대는 절대 변경되지 않아야합니다 (또는 적어도 매우 드 물어야 함). 그러면 서버의 모든 프로그램이 다시 시작되고 변화에 대해 안다 🙂


답변

나를 위해, 나는 hwclock명령을 실행할 때 시간이 명령을 실행할 때와 다른 시간이라는 것을 알았습니다 date. 이 문제를 해결하려면 hwclock --systohc두 번 동기화하고 예상 시간에 cronjob을 실행하는 전화를 걸 수 있습니다 .


답변