diff options
author | Darren Embry <dse@webonastick.com> | 2012-04-12 19:10:42 -0400 |
---|---|---|
committer | Darren Embry <dse@webonastick.com> | 2012-04-12 19:11:18 -0400 |
commit | 8bdb687946ddb997beb07caccfef61b961f4507e (patch) | |
tree | 7a055925c49eedd3ebbcf67e272ddd9a40cc85f7 /etc/rc.backup_rrd.sh | |
parent | 0d0cb04730eba406da9e2a063da636dd6d4f9208 (diff) | |
download | pfsense-8bdb687946ddb997beb07caccfef61b961f4507e.zip pfsense-8bdb687946ddb997beb07caccfef61b961f4507e.tar.gz |
Feature #2123 Backup RRD files using the xml dump and restore from RRD tools
http://redmine.pfsense.org/issues/2123
Diffstat (limited to 'etc/rc.backup_rrd.sh')
-rwxr-xr-x | etc/rc.backup_rrd.sh | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/etc/rc.backup_rrd.sh b/etc/rc.backup_rrd.sh index b39578d..0ae89fe 100755 --- a/etc/rc.backup_rrd.sh +++ b/etc/rc.backup_rrd.sh @@ -1,8 +1,17 @@ #!/bin/sh +: ${RRDDBPATH:=/var/db/rrd} +: ${CF_CONF_PATH:=/cf/conf} + # Save the rrd databases to the config path. -if [ -d "/var/db/rrd" ]; then - /etc/rc.conf_mount_rw - cd / && tar -czf /cf/conf/rrd.tgz -C / var/db/rrd/*.rrd - /etc/rc.conf_mount_ro +if [ -d "${RRDDBPATH}" ]; then + [ -z "$NO_REMOUNT" ] && /etc/rc.conf_mount_rw + for rrdfile in "${RRDDBPATH}"/*.rrd ; do + xmlfile="${rrdfile%.rrd}.xml" + /usr/bin/nice -n20 /usr/local/bin/rrdtool dump "$rrdfile" "$xmlfile" + done + cd / && tar -czf "${CF_CONF_PATH}"/rrd.tgz -C / "${RRDDBPATH#/}"/*.xml + rm "${RRDDBPATH}"/*.xml + [ -z "$NO_REMOUNT" ] && /etc/rc.conf_mount_ro fi + |