CentOS 6 系統若顯示時間不正確(如顯示 UTC 而非北京時間),會影響排程任務、日誌分析等時間敏感服務。本文說明如何永久修正時區,並設定自動網路校時。
date +%z
# 輸出 +0000 表示 UTC 時區
查看 /etc/localtime 確認指向的時區檔案。
sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
date +%z # 應顯示 +0800
date # 顯示正確本地時間
編輯 /etc/rc.d/rc.local,加入:
/usr/sbin/ntpdate -u 192.168.0.2 192.168.0.3 192.168.0.4; /sbin/hwclock -w
啟動時會向指定 NTP 伺服器同步並寫入硬體時鐘。
安裝 ntpdate:yum install ntpdate(或 apt-get)。
方式 A:編輯 /etc/crontab
00 11 * * * root ntpdate 210.72.145.44
# 每天 11:00 與中國國家授時中心同步
方式 B:使用 crontab -e
10 5 * * * root ntpdate us.pool.ntp.org; hwclock -w
# 每天 05:10 同步並更新 BIOS 時間
