1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-02-15 03:51:51 +00:00

Add script to save vnstat data

This commit is contained in:
Ycarus 2018-10-22 19:16:55 +02:00
parent 0ed6ee2a6b
commit 1c4bb39b1e
2 changed files with 54 additions and 0 deletions

View file

@ -0,0 +1 @@
* */12 * * * /etc/init.d/vnstat_backup backup

View file

@ -0,0 +1,53 @@
#!/bin/sh /etc/rc.common
EXTRA_COMMANDS="backup restore"
EXTRA_HELP=<<EOF
backup Backup vnstat database
restore Restore vnstat database
EOF
START=98
STOP=10
vnstat_option() {
sed -ne "s/^[[:space:]]*$1[[:space:]]*['\"]\([^'\"]*\)['\"].*/\1/p" /etc/vnstat.conf
}
BACKUP_FILE=/etc/vnstat_backup.tar.gz
LOGGER_TAG=vnstat_backup
VNSTAT_DIR="$(vnstat_option DatabaseDir)"
backup_database() {
if [ ! -d $VNSTAT_DIR ]; then
logger -t $LOGGER_TAG -p err "cannot backup, data directory $VNSTAT_DIR does not exist (yet)"
else
logger -t $LOGGER_TAG -p info "backing up database"
/bin/tar -zcf $BACKUP_FILE -C $VNSTAT_DIR .
fi
}
restore_database() {
if [ ! -f $BACKUP_FILE ]; then
logger -t $LOGGER_TAG -p err "cannot restore, backup file does not exist (yet)"
else
logger -t $LOGGER_TAG -p info 'restoring database'
[ ! -d $VNSTAT_DIR ] && mkdir $VNSTAT_DIR
/bin/tar -xzf $BACKUP_FILE -C $VNSTAT_DIR
fi
}
start() {
restore_database
}
stop() {
backup_database
}
backup() {
backup_database
}
restore() {
restore_database
}