這個是一個關于時間的問題,我們就先來了解一下關于時間的概念
UTC(Universal Time Coordinated):協調世界時
GMT(Greenwich Mean Time):格林威治時間
本地時間(local
time):全球二十四個時區,以GMT或UTC為基準進行調整。例如,北京為東八區,則北京時間為GMT+8或UTC+8
UTC和GMT基本上一致,但UTC經過平均太陽時(以格林威治時間GMT為準)、地軸運動修正后的新時標以及以秒為單位的國際原子時所綜合精算而成的時間,計算過程相當嚴謹精密,因此UTC比GMT來得更加精準更為精確。
Windows與Mac/Linux 缺省看待系統硬件時間的方式是不一樣的:
1) Windows把系統硬件時間當作本地時間(local
time),即操作系統中顯示的時間跟BIOS中顯示的時間是一樣的。
2) Linux/Unix/Mac默認把硬件時間當作
UTC,操作系統中顯示的時間是硬件時間經過換算得來的,比如說北京時間是GMT+8,則系統中顯示時間是硬件時間+8。
因此,若要解決上述Windows和Linux顯示時間不一致的問題,只要安裝設置Linux/Unix/Mac不要將硬件時間當做UTC時間,而是作為本地時間即可。
在CentOS 7里面有一個命令timedatectl 可以幫助我們修改服務器的時區。
首先我們可以使用timedatectl命令查看目前服務器里的時區設置:
Local time: 二 2016-04-19 20:58:44 CST
Universal time: 二 2016-04-19 12:58:44 UTC
RTC time: 二 2016-04-19 12:58:44
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: n/a
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
從上我們可以看到目前主機或服務器里的所有設置(時間、時區、NTP … )
使用命令timedatectl
list-timezones 查看所有的時區
使用命令timedatectl
set-timezone 設置時區
例如:timedatectl
set-timezone Asia/Shanghai
設置完時區后當然還可以設置NTP服務器的開啟和關閉
開啟NTP:timedatectl
set-ntp yes
關閉NTP:timedatectl
set-ntp no
當然timedatectl命令還可以設置日期與時間
設置日期:timedatectl
set-time YYYY-MM-DD
設置時間:timedatectl
set-time HH:MM:SS
centos7安裝時勾選了utc,會把主板時間作為utc,要更正過來
先時間同步 ntpdate
ntp1.aliyun.com
在將系統時間寫入硬件,hwclock --systohc
--localtime
|