局域网中有8台服务器,只有一台服务器可以上外网。现在希望通过这一台服务器通过外网定期进行时间的校准,然后其他服务器通过跟这台服务器进行时间同步,来达到整个服务器群时间校准的效果。
把可以链接外网的服务器作为server端,所有需要校准时间的服务器需要安装NTP,由于使用的服务器为CentOS,已经默认安装了NTP,如果没有安装NTP则需要先安装。
在server端需要做一些链接外网校准时间的配置。一般NTP的配置文件都在ntp.conf中。centos的ntp.conf文件在/etc目录下。编辑ntp.conf文件加入配置
driftfile /var/lib/ntp/drift
restrict 61.129.42.44
restrict 101.226.4.177
restrict 220.130.158.71
restrict 192.168.1.0 mask 255.255.255.0 nomodify#允许从server同步时间的网段
server 61.129.42.44 prefer
server 101.226.4.177
server 220.130.158.71
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
注意:网络对时的地址尽量用ip地址,防止因为域名解析的问题造成不能使用。多写几个,方便使用。
将同步好的时间写到CMOS里
vi /etc/sysconfig/ntpd
添加如下语句。
SYNC_HWCLOCK=yes
将server端的NTP作为开机自启动的服务:
chkconfig ntpd on
启动/停止/重启NTP服务的命令是:
service ntpd start/stop/restart
启动ntp服务以后通过相应命令查看是否搭建成功:
ntpstat
需要同步时间的客户端通过命令: /usr/sbin/ntpdate 192.168.1.101来同步时间,语句中的ip为NTP服务器的IP地址。
可以将语句写到crontab中让客户端定时的去校准时间:
0 */1 * * * /usr/sbin/ntpdate 192.168.1.101
每隔一个小时向server校准一次时间。
补充:时区修改
1.查看当前时区
vi /etc/sysconfig/clock
2.更改时区
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
3.保存时区,防止重启后失效
hwclock