今天在搭建项目环境的时候,发现有一台服务器使用ntpdata ntpserver命令后,与ntp服务器时间差距很大。经过排查,最终发现是由于在安装系统时,选择时区这一块没有选择正确(默认时区),由此导致了显示的时间和服务器的时间差距很大。
解决办法:修改系统时区为Asia/Shanghai(使用如下命令),然后再重新执行ntpdate命令即可。
cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
相关扩展:
查看系统时区相关命令:
[root@localhost ~]# date +%z +0800 #<==即东八区时间
修改系统时区相关操作:
将/usr/share/zoneinfo/目录下面的对应时区文件复制到/etc/目录,并重命令为localtime,例如设置Asia/Shanghai为默认时区命令:
cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
/etc/localtime文件:
设置系统的时区,将/usr/share/zoneinfo/ 中相应文件拷贝到/etc下并重命名为 localtime 即可修改时区设置,这种修改对 date 命令是及时生效的。不论是 date 还是 hwclock 都会用到这个文件,会根据这个文件的时区设置来进行UTC和本地之间之间的换算。 /etc/sysconfig/clock文件(不用修改): 这个配置文件里面支持UTC,ARC,SRM,ZONE这几个配置选项,关于这几个配置选项详解如下: (1)UTC 指定BIOS中保存的时间是否是GMT/UTC时间,true表示BIOS里面保存的时间是UTC时间,false表示BIOS里面保存的时间是本地时间 (2)ZONE 指定时区,ZONE的值是一个文件的相对路径名,这个文件是相对 /usr/share/zoneinfo 目录下的一个时区文件。比如ZONE的值可以是:“Asia/Shanghai", "US/Pacific", "UTC" 等 (3)ARC 这个选项一般配置false,在一些特殊硬件(Alpha)下才配置该选项为true (4)SRM 它同ARC,该选项一般配置false,在一下特殊硬件下才配置该选项为false 说明:这个配置文件里面的参数和 hwclock 命令关系很大,系统在启动的时候读取/etc/sysconfig/clock 文件的内容,根据这些内容调用hwclock 命令 (5)/etc/sysconfig/clock的配置实例 ZONE="Asia/Shanghai" UTC=false ARC=false
转载于:https://blog.51cto.com/13178102/2055701