在RPM系Linux系统上,NTP服务器对应的RPM包主要是chrony和ntp,CentOS 7及以上、RHEL 7及以上默认用chrony,CentOS 6及更早版本默认用ntp,新装环境直接装chrony即可。
ntp服务器是哪个rpm包:不同系统的默认答案
在CentOS、RHEL、Fedora这类系统上,时间同步服务并不是只有一个包,根据系统版本不同,默认安装的NTP相关rpm包也会变化。
| 系统版本 | 默认NTP RPM包 | 配置文件 | 服务名 |
|---|---|---|---|
| CentOS/RHEL 7/8/9 | chrony | /etc/chrony.conf | chronyd |
| CentOS/RHEL 6 | ntp | /etc/ntp.conf | ntpd |
| Fedora 较新版本 | chrony | /etc/chrony.conf | chronyd |
如果你不确定当前系统装了哪个包,可以直接跑一条命令:
rpm -qa | grep -E "chrony|ntp"
输出里带chrony-开头,就是chrony包,带ntp-开头,就是传统ntp包。
行业共识认为,RHEL 7之后红帽用chrony替换ntp作为默认时间同步实现,主要是因为chrony在虚拟机、云主机和间歇性断网场景下表现更好,这个变化也延续到了CentOS、Rocky Linux、AlmaLinux等衍生发行版。
centos7配置ntp服务器用哪个rpm包
CentOS 7是一个很常见的运维版本,很多人在搜索“centos7配置ntp服务器用哪个rpm包”,答案很明确:首选chrony。
CentOS 7最小化安装通常已经自带chrony包,如果没有,执行:
yum install -y chrony
安装chrony包
安装完成后,配置文件在/etc/chrony.conf,这个文件决定服务器从哪些上游时间源同步,以及是否允许其他机器从本机同步时间。
修改chrony.conf允许内网同步
打开配置文件后,重点看几行:
# 默认的公共时间池,如果服务器能上外网就保留 pool 2.centos.pool.ntp.org iburst # 允许同网段客户端从本机同步 allow 192.168.1.0/24 # 如果完全无法连外网,需要启用本地时钟作为时间源 local stratum 10

如果这台CentOS 7服务器本身可以访问互联网,就保留pool那一行,同时加上allow,这样它既是NTP客户端,也是内网NTP服务器。
如果这台服务器完全在隔离内网,没有外网出口,就把pool相关行注释掉,只保留local stratum 10和allow。
启动并验证NTP服务
配置改完后执行:
systemctl enable --now chronyd systemctl status chronyd
查询同步状态:
chronyc sources -v chronyc tracking
防火墙需要放行UDP 123端口,使用firewalld可以这样操作:
firewall-cmd --permanent --add-service=ntp firewall-cmd --reload
客户端机器上,只需把server指向这台CentOS 7的IP:
# 客户端 /etc/chrony.conf server 192.168.1.10 iburst
然后重启客户端chronyd即可。
chrony和ntp哪个好:rpm包对比与选择
很多人在选包时纠结“chrony和ntp哪个好”,这要分场景看。
| 对比维度 | chrony | ntp |
|---|---|---|
| 同步速度 | 更快,能快速纠正较大偏移 | 较慢,渐进式调整 |
| 断网或网络抖动表现 | 本地时钟保持稳定 | 偏移可能增大 |
| 配置文件复杂度 | 简单,规则直观 | 传统语法,需理解restrict等配置 |
| 内存占用 | 较低 | 一般 |
| 虚拟机和云主机适配 | 更好 | 一般 |
| 老系统兼容性 | 部分老监控脚本不识别 | 兼容性更好 |
业内专家指出,chrony在虚拟化环境中更受推荐,虚拟机经常暂停、迁移或遇到时钟漂移,chrony能更快恢复同步,传统物理服务器如果跑的是 CentOS 6 或更早系统,继续用ntp也没有问题。

多数情况下,新部署的系统直接选chrony,只有两种情况可以继续用ntp:一是系统太老只能装ntp,二是现有运维脚本强依赖ntpq -p输出格式。
内网ntp服务器搭建rpm包选型场景
内网环境经常没有互联网出口,几十台甚至更多机器时间不统一,会导致日志顺序混乱、数据库主从复制异常、证书校验失败等问题。
这种场景下,推荐用一台内网机器装chrony作为时间服务器。
配置一台内网时间服务器
选一台相对稳定的机器,安装chrony:
yum install -y chrony
编辑/etc/chrony.conf,写入:
# 完全内网环境,没有外部NTP源 local stratum 10 allow 192.168.0.0/16
启动服务:
systemctl enable --now chronyd
内网客户端指向时间服务器
其他内网机器可以继续用chrony,也可以根据系统版本装ntp,配置时只需把上游源改成内网服务器IP。
例如客户端用chrony:
# 客户端 /etc/chrony.conf server 192.168.0.5 iburst
如果用ntp包作为客户端:
# 客户端 /etc/ntp.conf server 192.168.0.5 iburst
然后启动对应服务。
这样内网所有机器的时间都以这台服务器为基准,服务器自身用local stratum 10提供本地时间,即使没有互联网也能保证内网时间一致。
北京机房ntp服务器rpm包部署要点
北京机房部署NTP服务器,通常对网络延迟和上游时间源可用性更敏感,选包上依然建议使用chrony,它同步速度快,适合托管环境。
配置上游源时,优先选择距北京较近的公共时间源,而不是默认的国外NTP池,例如常见的国内公共时间源:
# /etc/chrony.conf server ntp.aliyun.com iburst server time1.cloud.tencent.com iburst server time2.cloud.tencent.com iburst
这样做的目的是降低跨地域网络延迟带来的同步误差,不要只配一个上游源,至少配两个到三个,避免单个源故障导致时间漂移。

北京机房内如果有大量机器需要同步,可以单独用一台低配服务器或虚拟机作为内网NTP中继,它负责向上游公共源同步,下游机器只连内网中继,减少对外请求次数,也方便统一管理。
防火墙层面,机房交换机或安全组需要放行UDP 123端口出方向,入方向按需放行内网网段,这个操作路径和普通内网一致。
在RPM系系统上搭建NTP服务器,核心就是两个包:chrony和ntp,新系统用chrony,老系统用ntp,如果不知道装哪个,直接装chrony基本不会错,内网、机房、虚拟机这些常见场景下,chrony的适配性更好,配置也更简单。
ntp服务器rpm包安装常见问题Q&A
如何查看已安装的ntp服务器是哪个rpm包?
执行下面的命令:
rpm -qa | grep -E "chrony|ntp"
如果输出包含chrony-开头的包名,说明当前用的是chrony,如果输出包含ntp-开头的包名,说明用的是传统ntp,两者同时装的情况也存在,但通常会冲突或造成服务管理混乱,不建议同时启用。
ntp服务器rpm包和ntpdate包有什么区别?
ntp包提供的是完整的NTP服务端和客户端功能,ntpd进程会持续运行,监听UDP 123端口,可以给其他机器授时。ntpdate只是一个一次性同步工具,运行一次后立即退出,不会常驻,也不能作为服务器使用,部分RPM发行版会把ntpdate单独做成一个包,而ntp主包不包含它,现在多数场景下已经不需要单独安装ntpdate。
搭建ntp服务器需要购买商业软件或license吗?
不需要。chrony和ntp都是开源免费软件,通过yum或dnf直接从系统仓库安装即可,RHEL订阅用户可以从BaseOS或AppStream仓库获取chrony包,不需要额外支付授权费用。
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/801151.html

