Linux 局域网同步时间

Posted cnblogs_2015

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 局域网同步时间相关的知识,希望对你有一定的参考价值。

  1. 选择一台能上外网的机器作为时间服务器(都不能上亦可以,任选一台即可,但是只能保证局域网内时间同步)
  2. 配置此时间服务器
    • 安装 ntp
    • 在 /etc/ntp.conf 中配置
      • [plain] view plain copy
         
        1. restrict 127.0.0.1 //给予本机所有权限  
        2. restrict -6 ::1 //不大明白,针对IPV6吗?  
        3. restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap //给局域网内主机同步时间的权限,但不允许修改时间服务器的时间  
        4. server 0.rhel.pool.ntp.org //时间服务器,下同  
        5. server 1.rhel.pool.ntp.org  
        6. server 2.rhel.pool.ntp.org  
      • 其余采用默认的配置即可
  3. 配置局域网内机器
    • 安装 ntp
    • 在 /ect/ntp.conf 中配置
      • 注释掉原来的外网时间服务器,添加内网时间服务器:
      •         1. server 192.168.1.100 //修改为你内网时间服务器的IP  
    • 设置计划任务,每小时同步一次:
        1. vi /etc/cron.hourly/ntpdatehourly.sh  
        2. 添加如下内容:  
        3. #!/bin/sh   
        4. ntpdate 192.168.1.100  
    • 停掉 ntpd 服务:service ntpd stop
    • 手动同步时间,在各个节点上执行: ntpdate 192.168.1.100

 

  • 在上基础上设置间隔任意时间同步的方法:
    • vi /etc/crontab,如下截图:
      • 技术分享
    • 从上图可以看到定时任务指令编写的大致要求
    • 我们可以用 crontab -e 添加一个新的定时任务,在弹出的新文件编辑框中输入:
        1. */15 * * * * ntpdate 192.168.1.100  
    • 然后保存退出,会提示增加了一个新任务(上面这个任务代表“没间隔15分钟向时间服务器192.168.1.100同步一次时间”)
    • 可以用指令 crontab -u root -l 查看 root 用户的定时任务
  • Linux下的定时任务还是蛮有用的东西的,详细讲解见我的另一篇博客:点击这儿

 

    • 显然无论采用哪种方式定期同步时间,除了时间服务器其余节点上的 ntpd 服务都是必须停掉的
    • 如果你感觉你的一切配置都是没问题的,但是时间还是无法同步的话,那么请关注一下你的防火墙设置,即:service iptables

以上是关于Linux 局域网同步时间的主要内容,如果未能解决你的问题,请参考以下文章

linux ntp时间同步配置

Linux NTP时间同步服务

linux系统间如何时间同步?

Linux自动同步网络时间,并创建本地Ntp服务器。

Linux配置NTP服务器,时间同步

怎样开启linux系统下的ntp同步请求?