mirror of
https://github.com/xcat2/xcat-core.git
synced 2026-09-05 04:27:55 +00:00
067eda810e
Add xCAT::NTP::Backend, a selector for the NTP daemon xCAT configures, in the same spirit as xCAT::DHCP::Backend. It honours site.ntpbackend, defaults per distro family (EL7+/SLES15+ chrony, older ntpd, Ubuntu/Debian chrony), and downgrades to whichever of chrony/ntpd is actually installed rather than installing a second daemon. makentp selects through it instead of probing /usr/sbin/chronyd directly, so the choice is one unit-tested code path. Guarantee the daemon at install time: the xcat metapackage now Depends on "chrony | ntp" and the xCAT rpm Requires "(chrony or ntp)". Both sit beside the existing service dependencies the metapackage already declares -- isc-dhcp-server|kea, apache2, nfs-kernel-server -- because an MN that cannot serve time cannot serve its compute nodes, and Ubuntu's default systemd-timesyncd is a client only. Stop requiring hwclock in setupntp. It only persists the already-stepped system clock to the RTC, and Ubuntu 24.04 moved it to util-linux-extra, absent on minimal images -- so a fatal check_exec_or_exit aborted the entire NTP setup, including the clock step that does not use it. Use it when present, log and continue when not, and pull util-linux-extra through Recommends and the diskless pkglist so it usually is. Disable systemd-timesyncd there too. It ships as part of systemd rather than a time-daemon package, so nothing displaces it, and it keeps disciplining the clock against the daemon being configured. Signed-off-by: Daniel Hilst <392820+dhilst@users.noreply.github.com>