從Centos7 開始,新增了一條時間查詢命令:timedatectl
[root@c2 ~]# timedatectl Local time: Sat 2019-11-30 10:29:58 CST Universal time: Sat 2019-11-30 02:29:58 UTC RTC time: Sat 2019-11-30 02:29:55 Time zone: Asia/Shanghai (CST, +0800) NTP enabled: yes NTP synchronized: yes RTC in local TZ: no DST active: n/a
下面對系統日期常見的操作進行介紹:
硬件時間:RTC 或COMS時間,在主板上靠電池供電,服務器斷電后也會繼續運行。僅保存日期時間數值,無法保存時區和夏令時設置。
系統時間:一般在服務器啟動時復制RTC時間,之后獨立運行,保存了時間、時區和夏令時設置。
#timedatectl set-time "YYYY-MM-DD HH:MM:SS" #設置本地時間 timedatectl list-timezones | grep -E "Asia/S.*" timedatectl set-timezone Asia/Shanghai #查看所有時區和設置時區 timedatectl set-local-rtc 1 #RTC時間同步成本地時間一致 timedatectl set-ntp yes #啟動自動同步
Chrony服務
Chrony是一個開源的自由軟件,它能保持系統時鍾與時鍾服務器(NTP)同步,讓時間保持精確。它由兩個程序組成:chronyd和chronyc。
Chronyd是一個后台運行的守護進程,用於調整內核中運行的系統時鍾和時鍾服務器同步。它確定計算機增減時間的比率,並對此進行補償。
Chrony 是網絡時間協議的另一種實現,與網絡時間協議后台程序(ntpd)不同,它可以更快地且准確的同步系統時鍾。
兩種使用方法:
1.本地搭建chrony服務器+所有客戶端同步服務器時間
2.同步公網NTP服務時間
一:本地搭建chrony服務器+所有客戶端同步服務器時間
1.服務器端:
安裝並啟用:記得設置開機啟動
yum install -y chrony systemctl start chronyd systemctl enable chronyd
或者
yum install -y ntp systemctl start ntpd systemctl enable ntpd
修改配置文件:
vim /etc/chrony.conf
server ntp1.aliyun.com
server time1.aliyun.com
我們修改這一條就可以,其他配置參數自行百度。
2.客戶端:
yum install -y chrony systemctl start chronyd systemctl enable chronyd
同理安裝nt
修改配置文件:
vim /etc/chrony.conf
server chrony服務器IP iburst
我們修改這一條就可以,其他配置參數自行百度。
或者 vim /etc/ntp.conf
server 10.20.2.123 iburs
# chronyc sources 查詢時間同步信息源
#systemctl restart chronyd
#timedatectl
#timedatectl set-local-rtc 1
二.同步公網NTP服務時間
yum install -y chrony #安裝
systemctl start chronyd #啟用
systemctl enable chronyd #開機啟動
timedatectl set-timezone Asia/Shanghai #修改本地時區
timedatectl set-local-rtc 1
#RTC跟本地時間同步
timedatectl set-ntp yes
#啟動ntp
systemctl restart ntpd
#重啟ntp
[root@wiki ~]# timedatectl
Local time: Sat 2020-02-29 10:15:59 CST 本地時間
Universal time: Sat 2020-02-29 02:15:59 UTC 國際時間
RTC time: Sat 2020-02-29 10:15:59 RTC時間
Time zone: Asia/Shanghai (CST, +0800) 時區
NTP enabled: yes NTP是否啟動
NTP synchronized: no NTP同步
RTC in local TZ: yes RTC 同步到本地時間
DST active: n/a
# timedatectl set-local-rtc 1 #RTC跟本地時間同步,如果設置好不生效,則同步國際時間再同步本地時間試下 # timedatectl set-local-rtc 0 #RTC跟國際通用時間同步
