PRVF-7532错误本质是节点间时间偏差超500ms导致安装拒绝继续,而非NTP服务未运行;需配置chronyd的makestep、rtcsync、iburst等参数并验证offset绝对值≤500ms。
PRVF-7532 错误本质是时间差超限,不是“检测失败”而是“拒绝继续”
安装 oracle 19c rac 时遇到 prvf-7532,日志里通常带一句 “ntp time synchronization: failed”,但别被误导——这不是 ntp 服务没跑起来,而是 runcluvfy.sh 在校验阶段发现节点间时间偏差 > 500ms,直接报错退出。oracle 安装程序不关心你有没有开 chronyd,只认实测 offset。哪怕 chronyd 正在运行,只要 chronyc tracking 显示 offset > 500ms,prvf-7532 就必然触发。
chronyd 配置必须含 makestep 和 rtcsync,否则无法通过 PRVF-7532
默认的 /etc/chrony.conf 几乎肯定不满足 RAC 要求。关键点不在“是否启用 NTP”,而在“能否快速收敛大偏移 + 防止重启倒退”。以下配置项缺一不可(所有节点严格一致):
-
makestep 1.0 3:允许开机后前 3 秒内阶跃校正最大 1 秒,否则 chronyd 默认只 slew(缓慢拖动),PRVF-7532 校验时 offset 仍超标 -
rtcsync:强制内核定期把系统时间写入硬件时钟(RTC),避免服务器重启后时间大幅回跳(比如从 14:00 倒回 13:58) -
iburst:首次同步发 8 个包,加速初始收敛;配合minpoll 4 maxpoll 6(16s–64s 同步间隔),比默认(64s–1024s)更敏感 - 务必注释或删掉所有
pool行,只保留可信的本地 NTP server(如内网 NTP 服务器或物理机 host)
校验不能只看 systemctl status,要 run chronyc tracking 和 date -s 手动比对
改完配置、重启 chronyd 后,必须人工验证三件事:
- 执行
chronyc tracking,确认Offset列数值绝对值 - 执行
chronyc sources -v,确保至少一个 source 状态是^*(当前主源),且MS列显示u(已同步) - 在所有节点同时运行
date -u +%s.%N,取 3 次平均,计算最大差值 —— 这才是runcluvfy.sh真正检查的值,不是 chronyd 的理论 offset - 若仍有偏差,不要用
date -s直接硬调:先停chronyd,再date -s微调(建议 ≤ 10 秒),再启chronyd让它 slew 收敛
静默安装前最后一步:用 cluvfy 手动预检时间
别等 runInstaller 报错才处理。在静默安装前,手动运行:
./runcluvfy.sh stage -pre crsinst -n rac1,rac2 -verbose
重点盯输出里这一行:
PRVF-7532 : NTP Time Synchronization: passed
如果还是 failed,检查:
– 是否漏改某个节点的 /etc/chrony.conf
– 是否有节点防火墙拦了 NTP 端口(UDP 123)
– /var/log/chrony/measurements.log 里是否有频繁 timeout 或 panic
– timedatectl status 是否显示 System clock synchronized: yes 且 NTP service: active
真正卡住的往往不是配置本身,而是节点间 RTC 硬件时钟长期未同步,导致每次重启都凭空多出几十秒偏差 —— 这种情况必须靠 rtcsync + hwclock --systohc 彻底清理。











