Linux 系統擁有兩套獨立時鐘體系:系統時鐘 (System Clock,核心維護) 與 硬體時鐘 (Hardware Clock/RTC,主板電池供電)。兩者啟動時同步,之後獨立運作,所有命令皆以系統時鐘為準。理解此機制對伺服器時間管理至關重要。
# 1. 設定系統時間 (格式: 月日時分年.秒)
date 042612492005.30
# 2. 寫入硬體時鐘 (永久生效)
hwclock -w
或使用互動式設定:
su -c 'date -s "月/日/年"'
su -c 'date -s "時:分:秒"'
# 查看系統時間
date
# 設定系統時間 (月日時分年.秒)
date 091713272003.30
# 查看硬體時間
hwclock --show
# 或
clock --show
# 設定硬體時間 (格式: "月/日/年 時:分:秒")
hwclock --set --date="09/17/2003 13:26:00"
# 硬體時鐘 → 系統時鐘 (啟動時自動執行)
hwclock --hctosys
# 系統時鐘 → 硬體時鐘 (關機/手動同步)
hwclock --systohc
--hctosys = Hardware Clock to System Clock;--systohc = System Clock to Hardware Clock。
初學者建議使用圖形介面:執行 redhat-config-time 或選單「系統設定」→「日期與時間」,可同時修改雙時鐘。Red Hat 8.0+ 內建 NTP 功能,勾選「啟用網路時間協定」並指定時間伺服器 (如 time.stdtime.gov.tw) 即可自動對時,確保叢集環境時間一致性。
利用雙時鐘異步特性,可暫時將北京伺服器系統時間設為紐約時間完成檔案同步,事後再還原硬體時鐘,無需動搖 BIOS 設定,極具彈性。