CentOS下NTP服务器安装配置

网友投稿 646 2022-09-28

CentOS下NTP服务器安装配置

CentOS下NTP服务器安装配置

安装 yum install ntp

配置文件 /etc/ntp.conf restrict default kod nomodify notrap nopeer noquery restrict -6 default kod nomodify notrap nopeer noquery restrict 127.0.0.1 restrict -6 ::1 # 用restrict控管权限 # nomodify - 用户端不能更改ntp服务器的时间参数 # noquery - 用户端不能使用ntpq,ntpc等命令来查询ntp服务器 # notrap - 不提供trap远端登陆 restrict 192.168.0.0 mask 255.255.0.0 nomodify notrap # 以下是两个ntp服务器 restrict cn.pool.ntp.org restrict 164.67.62.194 # 用server设定上层ntp服务器,“prefer”表示优先 server cn.pool.ntp.org prefer server 164.67.62.194 server 127.127.1.0 # local clock fudge 127.127.1.0 stratum 10 # 系统时间与bios事件的偏差记录 driftfile /var/lib/ntp/drift keys /etc/ntp/keys # 日志 logfile /var/log/ntp.log broadcastdelay 0.008

一个说明: 我在vmware下搭建的ntp服务器,别人可以同步它,它自己的时间却不对。照理是它同步上层,下层同步它呀。后来找了蛮久的资料,发现这个文件:/etc/ntp/step-tickers,说是ntp服务器无法主动同步上层服务器,所以将地址写入该文件中即可。

我在物理机里暂时没发现这个问题,也许是物理机本来自己的时间就正确,就难以发现它有没有主动同步上层服务器。

运行ntp service ntpd start/stop/restart chkconfig ntpd on

查看ntp的端口,应该看到123端口 netstat -unlnp

查看ntp服务器有无和上层连通 [root@S5 ~]# ntpstat synchronised to NTP server () at stratum 2 time correct to within 74 ms polling server every 128 s 注意:此命令出现上述synchronised结果比较慢,我的用了大概5分钟。

查看ntp服务器与上层间的联系 [root@S5 ~]# ntptrace -n 127.0.0.1 127.0.0.1: stratum 2, offset 0.064524, synch distance 0.121167 210.72.145.44: timed out, nothing received***Request timed out 查看ntp服务器与上层ntp服务器的状态 [root@S5 ~]# ntpq -p 其中, remote - 本机和上层ntp的ip或主机名,“+”表示优先,“*”表示次优先 refid - 参考上一层ntp主机地址 st - stratum阶层 when - 多少秒前曾经同步过时间 poll - 下次更新在多少秒后 reach - 已经向上层ntp服务器要求更新的次数 delay - 网络延迟 offset - 时间补偿 jitter - 系统时间与bios时间差   客户端同步时间的方法 方法一:使用 ntpdate ntpdate [IP_Address] 看下面的例子,其中192.168.1.5是我在内网搭建的ntp服务器 [root@zy180 ~]# date Thu Sep 25 13:04:17 CST 2008 [root@zy180 ~]# ntpdate 192.168.1.5 25 Sep 14:33:13 ntpdate[10302]: step time server 192.168.1.5 offset 5327.700798 sec [root@zy180 ~]# date Thu Sep 25 14:33:18 CST 2008

ntpdate 的特点: 1,ntpdate只运行一次就结束,即只同步一次。所以要使用ntpdate同步时间的话要将该命令写入cron中。 vi /etc/crontab * * * * * root ntpdate 192.168.1.5 && hwclock -w 之所以使用hwclock -w命令稍后再说。 2,ntpdate同步时间是跳跃的,如上面的显示,时间立即就同步了,这将可能导致文件时间标记、监控数据的紊乱。

方法二:使用ntpd服务 step1:/etc/ntpd.conf 写入 server [IP_Address] step2:chkconfig ntpd on step3:service ntpd start

大概过一刻钟开始起作用。

FAQ:系统报错 - Sep 25 11:59:39 localhost kernel: set_rtc_mmss: can't update from 7 to 59 ==================================网上查得源码========================================== if (abs(real_minutes - cmos_minutes) < 30) { update_cmos() } else { printk("set_rtc_mmss: can't update from %d to %d\n", cmos_minutes, real_minutes); } ======================================================================================== bios时间与系统时间差异超过30分钟,就会报上述错误,只要修改bios时间或系统时间即可。

虚拟机下个人体验: 我的vm客户端用ntpd同步服务器后,慢慢变成标准时间,可接着又比标准时间越来越慢,然后出现上述报错。所以我觉得ntpd的同步频率比我的vm时钟频率跑得慢。     ntpd 的特点: 1,ntpd服务始终运行,定期同步时间。 2,ntpd服务是慢慢改变时间直至标准时间。 3,如果系统时间与bios时间差异超过30分钟,ntpd就会报错。

总结: 1,推荐使用 ntpd 服务。 2,ntpd开启后,无法使用ntpdate,看如下例子: [root@zy180 ~]# service ntpd start Starting ntpd: [ OK ] [root@zy180 ~]# ntpdate 192.168.1.5 25 Sep 15:25:22 ntpdate[12334]: the NTP socket is in use, exiting

附:linux的时间、时区 1,时间 系统时间:date 命令 bios时间:hwclock命令 (-r 读取bios时间,-w 写入bios时间) 每次开机时系统重新读bios时间。 所以前面ntpdate命令时的cron脚本需要用到hwclock,以避免机器重启后时间混乱。

2,时区 linux的所有时区文件都放在 /usr/share/zoneinfo 下。 linux系统的时区文件是 /etc/localtime,这是个时间格式的档案,不是ACSII码。它与/usr/share/zoneinfo/下的自己的时区文件是一样的。 我的时区是Asia-Shanghai,用diff比较两个文件,如下: [root@zy180 ~]# diff /usr/share/zoneinfo/Asia/Shanghai /etc/localtime [root@zy180 ~]# 在 /etc/sysconfig/clock 文件中也写有本时区的信息: [root@zy180 ~]# cat /etc/sysconfig/clock ZONE="Asia/Shanghai" UTC=false ARC=false ​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:linux 系统初始化超级脚本
下一篇:负载均衡集群解决方案 Nginx
相关文章

 发表评论

暂时没有评论,来抢沙发吧~