linux中的系统时间与硬件时间是异步运行的,系统每次开机会读取cmos里的时间,然后加载到系统中单独运行,生产中的服务器一般是7*24运行,时间长了就可能会出现时间不一致的现象,如果多台服务器负载均衡,就会造成每台服务器中日志文件记录时间也不一致。


把硬件时间同步为系统时间:

hwclock --hctosys

把系统时间同步为硬件时间:

hwclock --systohc 等同于hwclock -w


更改UTC为CST时区

cp /usr/share/zoneinfo/posix/Asia/Shanghai /etc/localtime


注:

1、/usr/share/zoneinfo/posix/Asia/Shanghai这个为上海时区文件(CST-8);/etc/localtime指定系统所使用的时区

2、修改BOIS时区

[root@centos-6 ~]# vim /etc/sysconfig/clock
ZONE="Asia/Shanghai"



ntp服务器地址

210.72.145.44
ntp.sjtu.edu.cn
s2f.time.edu.cn
s2g.time.edu.cn
time.windows.com
cn.pool.ntp.org

注:如果没有ntpdate工具,需安装rpm包ntpdatentp



==================================================================================


附:


hwclock介绍


在Linux中有硬件时钟与系统时钟两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的   时钟。当Linux启动时,系统时钟会去读取硬件时钟的设定,之後系统时钟即独立运作。所有Linux相关指令与函数都是读取系统时钟的设定。   hwclock实现了BIOS和linux的时间同步

语法格式:

hwclock [--adjust][--debug][--hctosys][--show][--systohc][--test]


[--utc][--version][--set --date=<日期与时间>]

参数说明:

  • –adjust or -a

hwclock每次更改硬件时钟时,都会记录在/etc/adjtime文件中。使用adjust参数,可使hwclock根据先前的记录来估算硬件时钟的偏差,并用来校正目前的硬件时钟。

  • –hctosys or -s

将系统时钟调整为与目前的硬件时钟一致。

  • –set –date=<日期与时间>

设定硬件时钟。

  • –show or -r

显示硬件时钟的时间与日期。

  • –systohc or -w

将硬件时钟调整为与目前的系统时钟一致。

  • –version or -v

显示版本信息。

  • –debug

显示hwclock执行时详细的信息。

  • –test

仅测试程序,而不会实际更改硬件时钟。

  • –utc

若要使用格林威治时间,请加入此参数,hwclock会执行转换的工作。

Hwclock使用

同步系统时钟和硬件时钟

# hwclock –w

设置硬件时钟时间:

# hwclock --set --date="9/8/2007 16:45:05"

查看硬件时钟

# hwclock -r