#!/sbin/openrc-run # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 command="/usr/bin/smokeping" command_user="smokeping:smokeping" pidfile="/run/smokeping/${RC_SVCNAME}.pid" extra_started_commands="reload" extra_stopped_commands="dump restore" required_files="/etc/smokeping/config" depend() { need net use dns } start_pre() { export LC_ALL=C if [ ! -d /run/smokeping/ ]; then mkdir /run/smokeping/ fi chown $command_user /run/smokeping/ } reload() { ebegin "Reloading smokeping" "${command}" --reload 2>&1 >/dev/null eend $? } dump() { ebegin "Dumping smokeping rrd files to XML for backup or upgrade use" for f in $(find /var/lib/smokeping -name '*.rrd' -print) ; do f_xml=$(dirname $f)/$(basename $f .rrd).xml rrdtool dump "$f" > "${f_xml}" chown root:0 "${f_xml}" done eend $? } restore() { ebegin "Restoring smokeping rrd files from XML dump files" for f in $(find /var/lib/smokeping -name '*.xml' -print) ; do f_rrd=$(dirname $f)/$(basename $f .xml).rrd mv -f "${f_rrd}" "${f_rrd}.bak" chown root:0 "${f_rrd}.bak" rrdtool restore "$f" "${f_rrd}" chown smokeping:smokeping "${f_rrd}" done eend $? }