You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04的ntpd客户端无法与NTP服务器同步问题求助

Ubuntu 22.04的ntpd客户端无法与NTP服务器同步问题求助

嗨,我来帮你梳理并解决这个问题!

首先,你遇到的failed to set ntp:N NTP not supported报错,核心原因是Ubuntu 22.04默认使用的是systemd-timesyncd作为NTP客户端工具,而不是传统的ntpd。当你执行timedatectl set-ntp true时,这个命令是用来控制systemd-timesyncd服务的,如果你想改用ntpd,就得先调整系统的NTP服务配置。

关于你提到的“Ubuntu 22.04不推荐ntpd”的说法,其实是准确的:Ubuntu从20.04开始就默认采用systemd-timesyncd作为客户端NTP工具,它更轻量、更贴合systemd生态,适合普通客户端场景;而ntpd现在更多被推荐用作NTP服务器,或者需要复杂时间同步策略的场景,但它并不是完全不被支持,只是默认没有安装而已。

针对你的暗网环境(无法连接互联网,NTP服务器是Windows Server 2022),可以按照以下步骤操作来让ntpd正常同步:

  1. 安装ntpd
    先确保系统上已经安装了ntpd,执行以下命令:

    sudo apt update && sudo apt install ntp
    
  2. 停止并禁用默认的systemd-timesyncd服务
    避免两个NTP服务冲突,先停用默认的同步工具:

    sudo systemctl stop systemd-timesyncd
    sudo systemctl disable systemd-timesyncd
    
  3. 配置ntpd指向你的Windows NTP服务器
    编辑ntpd的配置文件/etc/ntp.conf:

    sudo nano /etc/ntp.conf
    
    • 注释掉所有以pool开头的默认公共NTP服务器条目(因为你的环境无法联网)
    • 添加一行指向你的Windows Server 2022 NTP服务器,比如:
      server 你的Windows服务器IP或主机名 iburst
      

    (iburst参数可以让ntpd在启动时快速同步时间)

  4. 启动并启用ntpd服务
    配置完成后启动服务,并设置开机自启:

    sudo systemctl start ntp
    sudo systemctl enable ntp
    
  5. 验证同步状态
    等待几分钟后,执行以下命令查看ntpd的同步情况:

    ntpq -p
    

    如果输出中能看到你添加的Windows服务器条目,且remote列前有*或+标记,就说明已经成功同步了。

另外,建议你确认一下Windows Server 2022的NTP配置:

  • 确保Windows服务器的NTP服务已经正确启用,并且允许Ubuntu客户端通过UDP 123端口访问(检查Windows防火墙是否放开了这个端口)
  • 确认Windows服务器本身的时间是准确的,因为客户端会同步它的时间

备注:内容来源于stack exchange,提问作者עידו צור

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 07:58:08