1. 設置系統時間為中國時區並啟用NTP同步
yum install ntp # 安裝ntp服務
systemctl enable ntpd # 開機啟動服務
systemctl start ntpd # 啟動服務
timedatectl set-timezone Asia/Shanghai # 更改時區
timedatectl set-ntp yes # 啟用ntp同步
ntpq -p # 同步時間
2. 硬件時鍾和系統時鍾
- 硬件時鍾
RTC
(Real-Time Clock
)或CMOS
時鍾,一般在主板上靠電池供電,服務器斷電后也會繼續運行。僅保存日期時間數值,無法保存時區和夏令時設置。
- 系統時鍾
一般在服務器啟動時復制RTC
時間,之后獨立運行,保存了時間、時區和夏令時設置。
3. 常用時間命令
在CentOS 6
版本,時間設置有date
、hwclock
命令
從CentOS 7
開始,使用了一個新的命令timedatectl
# 讀取時間
timedatectl //等同於 timedatectl status
# 設置時間
timedatectl set-time "YYYY-MM-DD HH:MM:SS"
# 列出所有時區
timedatectl list-timezones
# 更改時區
timedatectl set-timezone Asia/Shanghai
# 或 ln -sf /usr/share/zoneinfor/Asia/Shanghai /etc/localtime
設置是否與NTP服務器同步
timedatectl set-ntp yes //yes或者no
將硬件時鍾調整為與本地時鍾一致
hwclock --systohc --localtime 或 timedatectl set-local-rtc 1
注,硬件時鍾默認使用UTC時間,因為硬件時鍾不能保存時區和夏令時調整,修改后就無法從硬件時鍾中讀取出准確標准時間,因此不建議修改。修改后系統會出現警告。
將硬件時間設置成 UTC
hwclock --systohc --utc 或 timedatectl set-local-rtc 1
# 顯示硬件時間:
hwclock --show
# 設置硬件時間:
hwclock --set --date ‘08/02/2012 12:00:00’
# 將硬件時間同步到系統時間:
hwclock --hctosys
# 強制把系統時間寫入CMOS:
# clock -w
4. GMT、UTC、CST、DST 時間
UTC
整個地球分為二十四時區,每個時區都有自己的本地時間。在國際無線電通信場合,為了統一起見,使用一個統一的時間,稱為通用協調時(UTC
, Universal Time Coordinated
)。
GMT
格林威治標准時間 (Greenwich Mean Time
)指位於英國倫敦郊區的皇家格林尼治天文台的標准時間,因為本初子午線被定義在通過那里的經線。(UTC
與GMT
時間基本相同,本文中不做區分)
CST
中國標准時間 (China Standard Time
)
DST
夏令時(Daylight Saving Time
) 指在夏天太陽升起的比較早時,將時鍾撥快一小時,以提早日光的使用。(中國不使用)
GMT + 8 = UTC + 8 = CST