#!/bin/sh # Make sure a .vhhash file exists even if empty touch .vhhash BACKUPTIME=`date +%Y-%m-%d_%T` SOURCE=/home/vhserver/.config/unity3d/IronGate/Valheim DESTDIR=/mnt/unraidshare/vhbackup DESTFILE=backup_$BACKUPTIME.tar.gz OLDHASH=`cat .vhhash` NEWHASH=`md5sum $SOURCE"/worlds/FSDedicated.db" | awk '{print $1}'` if pgrep valheim_server > /dev/null; then if [ "$OLDHASH" = "$NEWHASH" ]; then echo "World has not changed. Exiting." else # Create actual backup here tar -cpzf $DESTDIR"/"$DESTFILE $SOURCE echo $NEWHASH > .vhhash # Delete oldest file if there are more than 84 # (12 backups * 7 days) cd $DESTDIR ls -1t | tail -n +85 | xargs rm -f fi else echo "Nothing to do. Exiting." fi