> Linux教程 > linux基础 >

Linux 时间同步配置

设本地时间服务器

 

需要修改

 

/etc/ntp.conf

文件里的几

一. 使用ntpdate 命令

 

1.1 服务器可链接外网时

# crontab -e

加入一行

*/1 * * * * ntpdate 210.72.145.44

210.72.145.44 为中国国家授时中心服务器地址

这样该机每隔1分重就可以与国家授时中心进行同步了。

注意:在使用ntpdate 命令时, ntpd 服务必须是关闭的,否则会报the NTP socket is in use, exiting 错误。

关闭 ntpd 服务命令如下:

 [root@node2 init.d]# /etc/init.d/ntpd stop Shutting down ntpd:                                        [  OK  ]

 

1.2. 架设本地时间服务器

需要修改 /etc/ntp.conf文件里的几个配置就可以了,比如本地时间服务器IP 为 10.85.10.119,配置如下: server 210.72.145.44 prefer (中国国家授时中心服务器地址 prefer表示优先 注意把默认的server更改成这样)

server 127.127.1.0(本地时间)

restrict 10.85.10.0 mask 255.255.255.0 nomodify (允许10..85.10.* 的IP 使用该时间服务器) 

restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap noquery notrust 屏蔽其他IP过来更新时间。

其他的保持默认不动。

使NTP服务可以在系统引导的时候自动启动,执行:

 # chkconfig ntpd on

启动/关闭/重启NTP的命令。

# /etc/init.d/ntpd start

# /etc/init.d/ntpd stop

# /etc/init.d/ntpd restart

#service ntpd restart 将同步好的时间写到CMOS里

vi /etc/sysconfig/ntpd

SYNC_HWCLOCK=yes

每次修改了配置文件后都需要重新启动服务来使配置生效。

可以使用下面的命令来检查NTP服务是否启动,你应该可以得到一个进程ID号:

# pgrep ntpd

使用下面的命令检查时间服务器同步的状态:

# ntpq -p

用ntpstat 也可以查看一些同步状态,用netstat -ntlup查看端口使用情况。

安装完毕客户端需过5-10分钟才能从服务器端更新时间。

客户端设置:

# crontab -e 

加入一行:

 */1 * * * * ntpdate 10.85.10.119

 

相关配置参数说明 
#  restrict权限控制语法为; 
#  restrict IP mask netmask_IP parameter 
#  其中 IP 可以是软件地址也可以是 default default 就类似 0.0.0.0 咯!
#  至于 paramter 则有: 
#   ignore:关闭所有的 NTP 联机服务 
#   nomodify:表示 Client 端不能更改 Server 端的时间参数,不过, 
#   Client 端仍然可以透过 Server 端来进行网络校时。 
#   notrust 该 Client 除非通过认证否则该 Client 来源将被视为不信任网域 
#   noquery:不提供 Client 端的时间查询 
#  如果 paramter 完全没有设定,那就表示该 IP (或网域) 『没有任何限制!』

#  设定上层主机主要以 server这个参数来设定,语法为: 

#  server [IP|FQDN] [prefer] 
#  Server 后面接的就是我们上层 Time Server 啰!而如果 Server 参数 
#  后面加上 perfer 的话,那表示我们的 NTP 主机主要以该部主机来作为 
#  时间校正的对应。另外,为了解决更新时间封包的传送延迟动作。 


 二、使用rdate同步时间 


如果要用vmware安装RAC,则各个几点间时间必须一致,可以以一个节点作为标准,其他节点与该节点进行时间同步。 

假如有两个节点:

A: 10.85.10.119
B: 10.85.10.121

以A作为时间标准B节点用A节点时间进行同步。

1、在A节点开放37端口 
最简单,但也最不安全的方法是关闭防火墙:iptables -F

2. 在A节点启动时间服务 
#chkconfig time on

#在系统引导的时候自动启动  
如果不启动该服务,则其他节点与该节点同步时间时会报错,Connect Refused

注意:要用root 用户

3、在B节点与A节点同步时间 
rdate -s 10.85.10.119   可以在crontab 中做执行计划,每分钟执行一次,这样保证时间的同步。

[root@node2 ~]# crontab -l

*/1 * * * * rdate -s 10.85.10.119

[root@node2 ~]#

关于crontab 的介绍参考blog Unix crontab 命令详解

http://blog.csdn.net/tianlesoftware/archive/2010/02/21/5315039.aspx 


三、使用 Network Time Protocol (NTP) 服务器

1. 假如公司网络里有一个时间服务器: 10.85.10.80, 此时只需要在每个结点上修改NTP 服务配置文件,让每个结点和时间服务器进行同步即可。

# vi /etc/ntp.conf

Server 10.85.10.80 prefer

Driftfile /var/lib/ntp/drift

Broadcastdelay 0.008

修改完后在重启一下 ntp 服务

#/etc/init.d/ntpd restart

2. 如果没有时间服务,则可以用RAC 2个结点中一个做为服务器。另一个与此服务器同步即可。

加入用node1 做服务器, 其IP 为: 10.85.10.119,修改配置文件

#vi /etc/ntp.conf

Server 127.127.1.0  -- 本地时钟

Fudge 127.127.1.0 stratum 11

Broadcastdelay 0.008

Node2 与node1 同步。 修改node2的ntp 配置文件

# vi /etc/ntp.conf

Server 10.85.10.119 prefer

Driftfile /var/lib/ntp/drift Broadcastdelay 0.008

修改完后在重启一下 ntp 服务

#/etc/init.d/ntpd restart 

(责任编辑:IT)