当你发现时间是贼了,它早已偷光你的选择。
一,GMT、UTC、CST
GMT:(Greenwich Mean Time)格林威治时间 ,太阳通过格林威治那一刻来作为计时标准。
UTC:(Coordinated Universal Time)国际协调时间,由物理钟提供。
CST:美国,澳大利亚或中国的标准时间。中国标准时间:China Standard Time UT+8:00
二,Linux有硬件时钟和软件时钟两种
硬件时钟(实时时钟Real-Time Clock)由主板上的晶振提供。
系统时钟则是指kernel中的时钟。
Linux开机时会读取硬件时钟,同步给系统时钟。
三,相关命令
查看系统时间
[root@localhost ~]# timedatectl Local time: Thu 2016-02-18 21:44:45 CST Universal time: Thu 2016-02-18 13:44:45 UTC RTC time: Thu 2016-02-18 13:44:45 Timezone: Asia/Shanghai (CST, +0800) NTP enabled: yes NTP synchronized: yes RTC in local TZ: no DST active: n/a
设置系统时间
[root@localhost ~]# timedatectl set-time "1989-01-15 05:55" //date -s "19890115 05:55:00"
[root@localhost ~]# timedatectl set-time 1989-01-15 //date -s 19890115
[root@localhost ~]# timedatectl set-time 05:55" //date -s 05:55
查看所有时区
[root@localhost ~]# timedatectl list-timezones Africa/Abidjan Africa/Accra Africa/Addis_Ababa Africa/Algiers
...
更改系统时区
[root@localhost ~]# timedatectl set-timezone Africa/Accra [root@localhost ~]# date Sat Jan 14 21:27:31 GMT 1989 [root@localhost ~]# timedatectl set-timezone Asia/Shanghai [root@localhost ~]# date Sun Jan 15 05:28:01 CST 1989
或者
[root@localhost ~]# date Thu Feb 18 13:56:40 CST 2016 [root@localhost ~]# rm -f /etc/localtime [root@localhost ~]# date Thu Feb 18 13:56:40 UTC 2016 [root@localhost ~]# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime [root@localhost ~]# date Thu Feb 18 21:57:41 CST 2016
将系统时间变更为硬件时间
[root@localhost ~]# date -s 20130123 Wed Jan 23 00:00:00 CST 2013 [root@localhost ~]# clock Thu 18 Feb 2016 08:13:53 PM CST -0.971377 seconds [root@localhost ~]# clock -w [root@localhost ~]# clock Wed 23 Jan 2013 12:00:25 AM CST -0.437733 seconds
将硬件时间变更为系统时间
[root@localhost ~]# clock Wed 23 Jan 2013 12:05:22 AM CST -0.382773 seconds [root@localhost ~]# date -s 20080808 Fri Aug 8 00:00:00 CST 2008 [root@localhost ~]# clock -s [root@localhost ~]# date Wed Jan 23 00:06:18 CST 2013