You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
92 lines
2.6 KiB
92 lines
2.6 KiB
#!@l_prefix@/lib/openpkg/bash @l_prefix@/etc/rc |
|
## |
|
## rc.ntp -- Run-Commands for NTP Daemon |
|
## |
|
|
|
%config |
|
ntp_enable="yes" |
|
ntp_daemon="yes" |
|
ntp_log_prolog="true" |
|
ntp_log_epilog="true" |
|
ntp_log_numfiles="10" |
|
ntp_log_minsize="1M" |
|
ntp_log_complevel="9" |
|
|
|
%common |
|
ntp_signal () { |
|
if [ -f "@l_prefix@/var/ntp/ntpd.pid" ]; then |
|
kill -$1 `cat @l_prefix@/var/ntp/ntpd.pid` |
|
fi |
|
} |
|
|
|
%start -p 200 -u root |
|
opServiceEnabled ntp || exit 0 |
|
# synchronize local machine once at startup |
|
# because ntpd does not skip large time offsets |
|
@l_prefix@/bin/ntpdate \ |
|
`grep "^server" @l_prefix@/etc/ntp/ntp.conf |\ |
|
awk '{ printf(" %s", $2); }'` |
|
opVarIsYes ntp_daemon || exit 0 |
|
# run the NTP daemon for continued synchronization |
|
@l_prefix@/bin/ntpd \ |
|
-p @l_prefix@/var/ntp/ntpd.pid \ |
|
-f @l_prefix@/var/ntp/ntpd.drift \ |
|
-l @l_prefix@/var/ntp/ntpd.log \ |
|
-s @l_prefix@/var/ntp/ntpd.stat/ |
|
|
|
%stop -p 200 -u root |
|
opServiceEnabled ntp && opVarIsYes ntp_daemon || exit 0 |
|
ntp_signal TERM |
|
|
|
%restart -u root |
|
opServiceEnabled ntp && opVarIsYes ntp_daemon || exit 0 |
|
ntp_signal TERM |
|
sleep 2 |
|
# restart the NTP daemon for continued synchronization |
|
@l_prefix@/bin/ntpd \ |
|
-p @l_prefix@/var/ntp/ntpd.pid \ |
|
-f @l_prefix@/var/ntp/ntpd.drift \ |
|
-l @l_prefix@/var/ntp/ntpd.log \ |
|
-s @l_prefix@/var/ntp/ntpd.stat/ |
|
|
|
%hourly -u root |
|
opServiceEnabled ntp || exit 0 |
|
opVarIsYes ntp_daemon && exit 0 |
|
( |
|
sleep 30 |
|
@l_prefix@/bin/ntpdate \ |
|
`grep "^server" @l_prefix@/etc/ntp/ntp.conf |\ |
|
awk '{ printf(" %s", $2); }'` |
|
) >/dev/null & |
|
|
|
|
|
%daily -u root |
|
opServiceEnabled ntp && opVarIsYes ntp_daemon || exit 0 |
|
opTmpDirGen ntp |
|
opTmpDirFile ntp hint hintfile |
|
prolog="true" |
|
if [ ".$ntp_log_prolog" != . ]; then |
|
prolog="$prolog; $ntp_log_prolog" |
|
fi |
|
epilog="echo 'epilog' >$hintfile" |
|
if [ ".$ntp_log_epilog" != . ]; then |
|
epilog="$epilog; $ntp_log_epilog" |
|
fi |
|
shtool rotate -f \ |
|
-n${ntp_log_numfiles} -s${ntp_log_minsize} \ |
|
-d -z${ntp_log_complevel} \ |
|
-o@l_musr@ -g@l_mgrp@ -m644 \ |
|
-P "$prolog" \ |
|
-E "$epilog" \ |
|
@l_prefix@/var/ntp/ntpd.log |
|
if [ ".`cat $hintfile`" = ".epilog" ]; then |
|
ntp_signal TERM |
|
sleep 2 |
|
# restart the NTP daemon |
|
@l_prefix@/bin/ntpd \ |
|
-p @l_prefix@/var/ntp/ntpd.pid \ |
|
-f @l_prefix@/var/ntp/ntpd.drift \ |
|
-l @l_prefix@/var/ntp/ntpd.log \ |
|
-s @l_prefix@/var/ntp/ntpd.stat/ |
|
fi |
|
opTmpDirDel ntp
|
|
|