有些时候我们是不是发现网站项目发布的文章时间和实际的时间不同?这个大概率是因为服务器的系统时间没有同步当前的时区,尤其是我们在选择海外服务器的时候可能是当前海外地区的时间,这个时候我们需要设置系统时间同步到我们需要的时区。
在这篇文章种,老蒋记录CentOS7系统时间的设置和同步正确当前需要的时区。
1、设置系统时间为中国时区并启用NTP同步
yum install ntp # 安装ntp服务
systemctl enable ntpd # 开机启动服务
systemctl start ntpd # 启动服务
timedatectl set-timezone Asia/Shanghai # 更改时区
timedatectl set-ntp yes # 启用ntp同步
ntpq -p # 同步时间
这里,我们在CentOS7服务器中安装ntp服务,然后开启服务后设置时区,这里我们设置上海北京时间,然后可以同步系统更新即可。
2、常用的系统时间命令
在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
3、各个时区含义
UTC
整个地球分为二十四时区,每个时区都有自己的本地时间。在国际无线电通信场合,为了统一起见,使用一个统一的时间,称为通用协调时(UTC, Universal Time Coordinated)。
GMT
格林威治标准时间 (Greenwich Mean Time)指位于英国伦敦郊区的皇家格林尼治天文台的标准时间,因为本初子午线被定义在通过那里的经线。GMT + 8 = UTC + 8 = CST。
CST
中国标准时间 (China Standard Time)
DST
夏令时(Daylight Saving Time) 指在夏天太阳升起的比较早时,将时钟拨快一小时,以提早日光的使用。