![]() ![]() | ![]() |
- Fedora >= 26 use chronyd instead of ntpd.
<!DOCTYPE piml PUBLIC "-//TUX/DTD piml 1.0 Final//EN" "http://lpml.sourceforge.net/DTD/piml.dtd"> <!-- ntpcheck.piml --> <!-- Matthew Hall --> <!-- $Id: ntpcheck.piml,v 1.41 2019/10/28 16:34:48 raeburn Exp $ --> <!-- This file is part of the LearningOnline Network with CAPA (LON-CAPA). LON-CAPA is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. LON-CAPA is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with LON-CAPA; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA /home/httpd/html/adm/gpl.txt http://www.lon-capa.org/ --> <piml> <targetroot>/</targetroot> <files> <file> <target dist="default"></target> <perlscript mode="fg"> print "Checking to be sure the Network Time Protocol is running properly.\n"; if (('<DIST />' eq 'fedora26') || ('<DIST />' eq 'fedora27') || ('<DIST />' eq 'fedora28') || ('<DIST />' eq 'fedora29') || ('<DIST />' eq 'fedora30') || ('<DIST />' eq 'fedora31') || ('<DIST />' eq 'sles15') || ('<DIST />' eq 'centos8') || ('<DIST />' eq 'rhes8') || ('<DIST />' eq 'oracle7') || ('<DIST />' eq 'oracle8')) { print "For more information on chronyd please see https://chrony.tuxfamily.org/\n"; } else { print "For more information on ntpd please see http://www.ntp.org/\n"; } my $NTPD; my $name = 'ntp'; my $checkcmd = 'ps -ef |grep ntp |grep -v grep |grep -v ntpcheck'; my $startntpcmd; my $is_running; if (('<DIST />' eq 'fedora15') || ('<DIST />' eq 'fedora16') || ('<DIST />' eq 'fedora17') || ('<DIST />' eq 'fedora18') || ('<DIST />' eq 'fedora19') || ('<DIST />' eq 'fedora20') || ('<DIST />' eq 'fedora21') || ('<DIST />' eq 'fedora22') || ('<DIST />' eq 'fedora23') || ('<DIST />' eq 'fedora24') || ('<DIST />' eq 'fedora25') || ('<DIST />' eq 'fedora26') || ('<DIST />' eq 'fedora27') || ('<DIST />' eq 'fedora28') || ('<DIST />' eq 'fedora29') || ('<DIST />' eq 'fedora30') || ('<DIST />' eq 'fedora31') || ('<DIST />' eq 'centos7') || ('<DIST />' eq 'rhes7') || ('<DIST />' eq 'oracle7') || ('<DIST />' eq 'scientific7') || ('<DIST />' eq 'sles12') || ('<DIST />' eq 'sles15') || ('<DIST />' eq 'ubuntu18') || ('<DIST />' eq 'rhes8') || ('<DIST />' eq 'centos8') || ('<DIST />' eq 'oracle8')) { $NTPD = 'ntpd'; if ('<DIST />' eq 'ubuntu18') { $NTPD = 'ntp'; } elsif (('<DIST />' eq 'fedora26') || ('<DIST />' eq 'fedora27') || ('<DIST />' eq 'fedora28') || ('<DIST />' eq 'fedora29') || ('<DIST />' eq 'fedora30') || ('<DIST />' eq 'fedora31') || ('<DIST />' eq 'sles15') || ('<DIST />' eq 'rhes8') || ('<DIST />' eq 'centos8') || ('<DIST />' eq 'oracle7') || ('<DIST />' eq 'oracle8')) { $NTPD = 'chronyd'; $name = $NTPD; } $checkcmd = "systemctl is-enabled $NTPD.service"; $startntpcmd = "systemctl start $NTPD.service"; if (!-e "/usr/sbin/$NTPD") { print "$name is not installed.\n"; exit; } } else { if (-e "/etc/init.d/ntpd") { $NTPD = "ntpd"; } elsif (-e "/etc/init.d/xntpd") { $NTPD = "xntpd"; } elsif (-e "/etc/init.d/ntp") { $NTPD = "ntp"; } else { print "ntp is not installed.\n"; exit; } $startntpcmd = "/etc/init.d/$NTPD start"; } if (open(PIPE,'-|',$checkcmd)) { $is_running = <PIPE>; chomp($is_running); close(PIPE); if (!$is_running) { print "WARNING: $name is installed but is not currently running.\n"; if ($name eq 'ntp') { print "Please verify the configuration of ntp in /etc/ntp.conf and /etc/ntp/step-tickers\n"; } print "Start $name by executing\n $startntpcmd\n"; } else { print "$name is installed and running\n"; } } else { print "Could not determine $name status.\n"; } # chkconfig barfs to stderr if the target isn't set up right. if (('<DIST />' eq 'fedora15') || ('<DIST />' eq 'fedora16') || ('<DIST />' eq 'fedora17') || ('<DIST />' eq 'fedora18') || ('<DIST />' eq 'fedora19') || ('<DIST />' eq 'fedora20') || ('<DIST />' eq 'fedora21') || ('<DIST />' eq 'fedora22') || ('<DIST />' eq 'fedora23') || ('<DIST />' eq 'fedora24') || ('<DIST />' eq 'fedora25') || ('<DIST />' eq 'fedora26') || ('<DIST />' eq 'fedora27') || ('<DIST />' eq 'fedora28') || ('<DIST />' eq 'fedora29') || ('<DIST />' eq 'fedora30') || ('<DIST />' eq 'fedora31') || ('<DIST />' eq 'centos7') || ('<DIST />' eq 'rhes7') || ('<DIST />' eq 'oracle7') || ('<DIST />' eq 'scientific7') || ('<DIST />' eq 'sles12') || ('<DIST />' eq 'sles15') || ('<DIST />' eq 'ubuntu18') || ('<DIST />' eq 'rhes8') || ('<DIST />' eq 'centos8') || ('<DIST />' eq 'oracle8')) { if (!-l "/etc/systemd/system/multi-user.target.wants/$NTPD.service") { print "**** WARNING: $NTPD is not configured to run at boot. To correct this run:\nsystemctl enable $NTPD.service\n"; } exit; } else { my $checking_bin; my $restartchk; if (('<DIST />' eq 'debian5') || ('<DIST />' eq 'debian6') || ('<DIST />' eq 'ubuntu6') || ('<DIST />' eq 'ubuntu8') || ('<DIST />' eq 'ubuntu10') || ('<DIST />' eq 'ubuntu12') || ('<DIST />' eq 'ubuntu14') || ('<DIST />' eq 'ubuntu16')) { $checking_bin = '/usr/sbin/sysv-rc-conf'; } else { $checking_bin = '/sbin/chkconfig'; } $restartchk = `$checking_bin --list $NTPD 2>/dev/null`; if ($restartchk eq '') { print "**** WARNING: ntpd is either not installed or not configured to run at boot.\n"; exit; } if ($restartchk =~ /^error reading information on service / || $restartchk !~ /\d:(on|off)/) { print "**** WARNING: Unable to check status $NTPD with $checking_bin.\n"; exit; } if ($restartchk !~ /\s3:on/) { print "**** WARNING: ntpd is not set to start at runlevel 3. To correct this run:\n$checking_bin --level 345 $NTPD on\n"; exit; } if ($restartchk !~ /\s5:on/) { print "**** WARNING: ntpd is not set to start at runlevel 5. To correct this run:\n$checking_bin --level 345 $NTPD on\n"; exit; } } </perlscript> </file> </files> </piml>