Linux服务器运行久时,系统时间就会存在一定的误差,一般情况下可以使用date命令进行时间设置,但在做数据库集群分片等操作时对多台机器的时间差是有要求的,此时就需要使用ntpdate进行时间同步。


date命令:

date                                 查看当前时间,结果如下:

Tue   Mar   4  01:36:45  CST  2014

date  -s  09:38:40                   设置当前时间,结果如下:

Tue   Mar   4  09:38:40  CST  2014


ntpdate命令:

ntpdate  -u  210.72.145.44            网络时间同步命令


注意:若不加上-u参数, 会出现以下提示:no server suitable for synchronization found

      加上后我也出现这种情况,不过时间是同步过来了;

-u:从man ntpdate中可以看出-u参数可以越过防火墙与主机同步;



ntp常用服务器:

中国国家授时中心:210.72.145.44

== NTP服务器(上海) :ntp.api.bz


美国:time.nist.gov 

复旦:ntp.fudan.edu.cn 

微软公司授时主机(美国) :time.windows.com 

台警大授时中心(台湾):asia.pool.ntp.org


中国可用的

server 133.100.11.8 prefer

server 210.72.145.44

server 203.117.180.36

server 131.107.1.10

server time.asia.apple.com

server 64.236.96.53

server 130.149.17.21

server 66.92.68.246

server www.freebsd.org

server 18.145.0.30

server clock.via.net

server 137.92.140.80

server 133.100.9.2

server 128.118.46.3

server ntp.nasa.gov

server 129.7.1.66

server ntp-sop.inria.frserver 210.72.145.44(中国国家授时中心服务器IP地址)

server ntp.sjtu.edu.cn(上海交通大学网络中心NTP服务器地址)


其他高校NTP地址:服务器列表:

s1a.time.edu.cn 北京邮电大学 010

s1b.time.edu.cn 清华大学 010-62795818-6105

s1c.time.edu.cn 北京大学 010-62753007

s1d.time.edu.cn 东南大学 025-3794342-309

s1e.time.edu.cn 清华大学 010-62795818-6105

s2a.time.edu.cn 清华大学 010-62795818-6105

s2b.time.edu.cn 清华大学 010-62795818-6105

s2c.time.edu.cn 北京邮电大学 010-62283044-8003

s2d.time.edu.cn 西南地区网络中心

s2e.time.edu.cn 西北地区网络中心 029-2669037

s2f.time.edu.cn 东北地区网络中心 024-23966854

s2g.time.edu.cn 华东南地区网络中心 021-62932901-8101

s2h.time.edu.cn 四川大学网络管理中心 028-85414820

s2j.time.edu.cn 大连理工大学网络中心 0411-4708642

s2k.time.edu.cn CERNET桂林主节点 0773-5845246

s2m.time.edu.cn 北京大学

time.jmu.edu.cn



安   装:  yum  install  -y  ntpdate

配置文件: /etc/ntp.conf   或者  /etc/ntp/step-tickers  编辑

wKiom1YZ4_qjtIXKAAECAU5nwug440.jpg





设置Linux的时钟

在Linux中,用于时钟查看和设置的命令主要有date、hwclock和clock。其中,clock和hwclock用法相近,只不过 clock命令除了支持x86硬件体系外,还支持Alpha硬件体系。由于目前绝大多数用户使用x86硬件体系,所以可以视这两个命令为一个命令来学习。


1.在虚拟终端中使用date命令来查看和设置系统时间

查看系统时钟的操作:

 date

设置系统时钟的操作:

 date  091713272003.30

通用的设置格式:

 date  月日时分年.秒


2.使用hwclock或clock命令查看和设置硬件时钟

查看硬件时钟的操作:

 hwclock  --show 或

 clock  --show

2003年09月17日 星期三 13时24分11秒 -0.482735 seconds


设置硬件时钟的操作:

 hwclock  --set  --date="09/17/2003 13:26:00"

或者

 clock  --set  --date="09/17/2003 13:26:00"

通用的设置格式:hwclock/clock --set --date=“月/日/年 时:分:秒”。


3.同步系统时钟和硬件时钟

Linux系统(笔者使用的是Red Hat 8.0,其它系统没有做过实验)默认重启后,硬件时钟和系统时钟同步。如果不大方便重新启动的话(服务器通常很少重启),使用clock或hwclock命令来同步系统时钟和硬件时钟。

硬件时钟与系统时钟同步:

 hwclock  --hctosys

或者

 clock  --hctosys

上面命令中,--hctosys表示Hardware Clock to SYStem clock。


系统时钟和硬件时钟同步:

 hwclock  --systohc

或者

 clock  --systohc


2,我们现在要把该LINUX服务器与网络上的一台时间同步服务器同步,操作过程如下:

ntpdate 210.72.145.44

执行同步时间命令提示:the NTP socket is in use, exiting  ,需停止时间服务(/etc/init.d/ntpd stop)后再执行同步时间命令






文章转自于:http://blog.csdn.net/bbirdsky/article/details/20445385 

            http://blog.csdn.net/xluren/article/details/11042383 


只是为了预防原作者文章衔接找不到,复制了一下;