2015-09-10 54 views
-1

在Linux CentOS 5機器上,我每天都會在@reboot中使用cronjob運行process.sh(每天早上機器會關閉並每天早上打開)。什麼時候linux設置計算機的正確時間?

process.sh取出計算機的'日期',並將其寫入日誌文件,然後退出。

當我檢查日誌文件,在它的時間戳說:「星期二1月1日十三點14分38秒格林尼治標準時間2008年」

當我去到計算機的控制檯,並給它的「日期」命令,它打印正確的日期。

我最好的猜測是我的cronjob在計算機設置正確的時間之前運行。

有沒有辦法解決這個問題?

+0

我們可以看到你的shell腳本和日期調用嗎? –

+0

最有可能的是,服務器使用NTP從外部服務器獲取「正確的時間」。我認爲你的腳本應該檢查ntpd是否先運行。 – Leo

+1

也,你可以用ntpq來代替(見http://www.cyberciti.biz/faq/linux-unix-bsd-is-ntp-client-working/) – Leo

回答

0

爲主板上的CMOS內存供電的電池可能已用完。嘗試用新鮮的替換它。它應該看起來像this

這個建議是基於你的日誌條目的日期是「2008年1月1日」,這看起來像你的主板可能使用的epoch顯着。然而,現在的時間13:14:38對此有點偏離;而如果您處於正確的時區,則可以解釋13小時的班次,接近15分鐘的班次似乎很奇怪。除非你的電腦需要很長時間才能啓動到cron執行你的工作的地步。當然,正如其他人所指出的,你最終看到正確時間的原因可能是ntp修正了系統時間。

+0

很好的答案,謝謝。 – quelquecosa

相關問題