blob: 4892a57b16361dd67aecd5eae653d68bafd46e15 [file] [log] [blame]
#!/sbin/openrc-run
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
depend() {
use dns
}
checkconfig() {
# Note that /etc/chrony/chrony.keys is *NOT* checked. This
# is because the user may have specified another key
# file, and we don't want to force the user to use that
# exact name for the key file.
if [ ! -f "${CFGFILE}" ] ; then
eerror "Please create ${CFGFILE} and the"
eerror "chrony key file (usually /etc/chrony/chrony.keys)"
eerror "by using the"
eerror ""
eerror " chrony.conf.example"
eerror " chrony.keys.example"
eerror ""
eerror "files (from the documentation directory)"
eerror "as templates."
return 1
else
# Actually, I tried it, and chrony seems to ignore the pidfile
# option. I'm going to leave it here anyway, since you never
# know if it might be handy
PIDFILE=`awk '/^ *pidfile/{print $2}' "${CFGFILE}"`
[ -z "${PIDFILE}" ] && PIDFILE=/run/chrony/chronyd.pid
fi
return 0
}
setxtrarg() {
if [ -c /dev/rtc ]; then
grep -q '^rtcfile' "${CFGFILE}" && ARGS="${ARGS} -s"
fi
grep -q '^dumponexit$' "${CFGFILE}" && ARGS="${ARGS} -r"
return 0
}
start() {
checkconfig || return $?
setxtrarg
[ -n "${PIDFILE}" ] || PIDFILE=/run/chronyd.pid
ebegin "Starting chronyd"
start-stop-daemon \
--start \
--quiet \
--exec /usr/sbin/chronyd \
--pidfile "${PIDFILE}" \
-- -f "${CFGFILE}" ${ARGS}
eend $? "Failed to start chronyd"
}
stop() {
checkconfig || return $?
[ -n "${PIDFILE}" ] || PIDFILE=/run/chronyd.pid
ebegin "Stopping chronyd"
start-stop-daemon \
--stop \
--quiet \
--pidfile "${PIDFILE}"
eend $? "Failed to stop chronyd"
}