• ubuntu20.04部署ntp服务器ntpd(ntpdate )


    步骤

    1. 安装NTP

    首先,在终端中更新你的包列表,然后安装NTP。输入下面的命令:

    sudo apt update
    sudo apt install ntp
    
    • 1
    • 2

    2. 配置NTP

    编辑NTP的配置文件,这里我们使用nano文本编辑器,但你也可以使用你喜欢的其他编辑器。

    sudo nano /etc/ntp.conf
    
    • 1

    在此文件中,找到以"pool"开头的行,它们定义了NTP将与之同步的服务器。你可以保留默认值,或者根据需要添加/更改。例如:

    pool 0.ubuntu.pool.ntp.org iburst
    pool 1.ubuntu.pool.ntp.org iburst
    pool 2.ubuntu.pool.ntp.org iburst
    pool 3.ubuntu.pool.ntp.org iburst
    
    • 1
    • 2
    • 3
    • 4

    iburst选项表示如果服务器没有响应,客户端将发送一串数据包。

    3. 重启NTP服务

    保存并关闭配置文件。然后重启NTP服务,以便更改生效。

    sudo systemctl restart ntp
    
    • 1

    4. 检查NTP服务状态

    你可以使用以下命令来检查NTP服务的状态。

    sudo systemctl status ntp
    
    • 1

    如果一切正常,你将看到输出显示服务正在运行。
    在这里插入图片描述

    5. 验证NTP同步

    ntpq -p检查本地ntp服务是否正常

    通过运行以下命令,可以查看服务器是否正在与其它NTP服务器进行同步。

    ntpq -p
    
    • 1

    在这里插入图片描述
    上述ntpq -p命令的输出结果显示了NTP服务器正在与多个远程服务器同步。在’remote’列中,每行的开头字符有特殊含义:

    • ‘*’ 表示当前正在使用的同步源。
    • ‘+’ 表示候选的同步源。
    • ‘-’ 表示被丢弃的同步源。
    • ‘空格’ 表示备选的同步源。

    从这个列表中可以看到,NTP服务器正常工作,并且已经选择了一个同步源(*dns2.synet.edu.)。此外,还有几个候选源(+36.110.235.196和+36.110.233.85)。

    服务器不能连外网,如何配置?

    如果希望让服务器只在内网中服务,需要检查/etc/ntp.conf配置文件,确保只有内部时间源被列为server或pool,同时注释掉或删除其他外部服务器的配置。

    例如,需要将/etc/ntp.conf文件中的以下行注释掉或删除:

    0.ubuntu.pool.ntp.org
    1.ubuntu.pool.ntp.org
    2.ubuntu.pool.ntp.org
    3.ubuntu.pool.ntp.org
    
    • 1
    • 2
    • 3
    • 4

    并添加内部时间源,如果没有的话就使用本地的硬件时钟:

    server 127.127.1.0
    fudge 127.127.1.0 stratum 10
    
    • 1
    • 2

    然后重启NTP服务:

    sudo systemctl restart ntp
    
    • 1

    再次运行ntpq -p,应该只能看到内部服务器或者本地时钟。

    ntpdate -q xxx查询ntp服务器时间

    我在我另一台主机192.168.1.140上执行ntpdate -q 192.168.1.134(134是我ntp服务器所在主机):
    在这里插入图片描述
    解释:
    上述命令 ntpdate -q 192.168.1.134-q 参数代表 query(查询),即查询并不真正设置系统时间。这里正在查询 IP 地址为 192.168.1.134 的 NTP 服务器的时间。

    输出结果中的各部分意义如下:

    • server 192.168.1.134, stratum 2, offset 12.812453, delay 0.02638 :这一行显示了NTP服务器的信息。stratum 是指服务器在 NTP 层级中的位置,数字越小表示越接近参考源,其值为2。offset 是指您的系统时间相对于NTP服务器的时间差,以秒为单位,这里是 12.812453 秒。delay 是从您的系统到NTP服务器的往返延迟时间,这里是 0.02638 秒。

    • 25 Sep 16:06:12 ntpdate[21820]: step time server 192.168.1.134 offset 12.812453 sec :这一行是实际执行更新操作的日志记录。但由于 -q 参数只进行查询而不执行更新,所以这个操作并没有真变系统时间。如果没有 -q 参数,系统会试图根据这个 offset 调整系统时间。

    这个命令和结果显示了你的机器与指定的 NTP 服务器相比,系统时间有约 12.812453 秒的差距。

    (反正执行这个命令能获取到时间,说明我们部署没啥问题)

  • 相关阅读:
    汇编语言(6)使用JCC指令构造分支与循环
    统一异常的处理方法
    Spring Cloud Function Spel表达式注入
    HTML做成一个粒子漩涡特效页面
    Java IDEA feign调用上传文件MultipartFile以及实体对象亲测可行
    Lock和synchronized的区别
    程序员面试及机考完全指南
    基于未知环境下四旋飞行器运动规划应用研究(Matlab代码实现)
    面试网络-0x01 http中的GET和POST区别?
    在 PyCharm 中使用 CuPy 进行 CUDA 加速的向量运算
  • 原文地址:https://blog.csdn.net/Dontla/article/details/133273628