diff --git a/crontab.example b/crontab.example index 5719d3b..5ad13b9 100644 --- a/crontab.example +++ b/crontab.example @@ -26,9 +26,11 @@ ROYBACKUP="/usr/local/roybackup" 40 4 */3 * * ${ROYBACKUP}/home.sh www-data # Minecraft backups -0 5 * * * ${ROYBACKUP}/minecraft.sh Survival -10 5 * * * ${ROYBACKUP}/minecraft.sh Creative -20 5 * * * ${ROYBACKUP}/minecraft.sh Direwolf20 +0 5 * * * ${ROYBACKUP}/minecraft.sh Survival +# Full FTB backup every 4 days +20 5 */4 * * ${ROYBACKUP}/minecraft.sh Direwolf20 +# Backup only config files and dimension 0 every 6 hours +0 */6 * * * ${ROYBACKUP}/minecraft.sh Direwolf20 /home/minecraft/direwolf.exclude # rsync backups to off-site server 0 7 * * * rsync -aPvu /home/backups/ remote@backupserver.com:~/myserverbackups/ diff --git a/crontest.sh b/crontest.sh new file mode 100644 index 0000000..9e913d5 --- /dev/null +++ b/crontest.sh @@ -0,0 +1,19 @@ +#!/bin/sh +ROYBACKUP="/usr/local/roybackup" +# MySQL backups +${ROYBACKUP}/mysql.sh forums +${ROYBACKUP}/mysql.sh minecraft +${ROYBACKUP}/mysql.sh prism +# System +${ROYBACKUP}/sys.sh +# Minecraft +#${ROYBACKUP}/minecraft.sh Survival +#${ROYBACKUP}/minecraft.sh Direwolf20 +# Home +${ROYBACKUP}/home.sh asimov +${ROYBACKUP}/home.sh gameserver +${ROYBACKUP}/home.sh posteranonymous +${ROYBACKUP}/home.sh tehrage +${ROYBACKUP}/home.sh vanderprot +${ROYBACKUP}/home.sh www-data + diff --git a/direwolf.exclude b/direwolf.exclude new file mode 100644 index 0000000..c368dad --- /dev/null +++ b/direwolf.exclude @@ -0,0 +1,37 @@ +*/world/DIM*/* + +*.log +*.log.* +*.tar.gz + +*.bsp +*.vpk +world-*.zip + +.m2/ +.m2/* +*/.m2/* +*/*-backup/* +*/*-backups/* +*/backup/* +*/Backup/* +*/backups/* +*/Backups/* +*/cache/* +*/caches/* +*/crash/* +*/directx_installer/* +*/dynmap/web/tiles/* +*/libraries/* +*/log/* +*/Log/* +*/logs/* +*/Logs/* +*/multicraft/* +*/node_modules/* +*/temp/* +*/tmp/* + +Survival/resource/* +Survival/resource_nether/* +Survival/resource_the_end/* diff --git a/home.exclude b/home.exclude index a1c7f01..1887352 100644 --- a/home.exclude +++ b/home.exclude @@ -4,7 +4,9 @@ *.bsp *.vpk +steamclient.so +*/appcache/* */*-backup/* */*-backups/* */backup/* @@ -19,4 +21,11 @@ */Logs/* */node_modules/* */temp/* -*/tmp/* \ No newline at end of file +*/tmp/* +*/twit-mirror/* + +*/arkdedicated/Engine/* +*/arkdedicated/linux64/* +*/arkdedicated/ShooterGame/Content/* +*/arkdedicated/ShooterGame/Binaries/* +Steam/* diff --git a/minecraft.exclude b/minecraft.exclude index fb07dbe..9ef61a3 100644 --- a/minecraft.exclude +++ b/minecraft.exclude @@ -28,4 +28,8 @@ world-*.zip */multicraft/* */node_modules/* */temp/* -*/tmp/* \ No newline at end of file +*/tmp/* + +Survival/resource/* +Survival/resource_nether/* +Survival/resource_the_end/* diff --git a/minecraft.sh b/minecraft.sh index 4715b12..f708b24 100755 --- a/minecraft.sh +++ b/minecraft.sh @@ -5,7 +5,7 @@ # Where backups are to be kept BACKUPDIR=/home/backups/minecraft -EXCLUDE=minecraft.exclude +EXCLUDE=${2:-minecraft.exclude} # CONSTANTS: DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" @@ -13,6 +13,7 @@ PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games cd $DIR # SCRIPT: +echo -e "[MINECRAFT] Using exclude file $EXCLUDE" echo -e "[MINECRAFT] Calculating backup size..." SIZE=`du -sm --exclude-from=$EXCLUDE /home/minecraft/$1 2> /dev/null | cut -f 1` @@ -22,4 +23,4 @@ BACKUPPATH=${BACKUPDIR}/$1-${TIMESTAMP}.tar.bz echo -e "[MINECRAFT] Performing ${SIZE}MB /home/minecraft/$1 backup to ${BACKUPPATH}..." tar --exclude-from=$EXCLUDE \ -cf - /home/minecraft/$1 | pv -p -e -r -b -s ${SIZE}m | bzip2 > $BACKUPPATH -echo -e "[MINECRAFT] Finished backup to ${BACKUPPATH}" \ No newline at end of file +echo -e "[MINECRAFT] Finished backup to ${BACKUPPATH}" diff --git a/sys.sh b/sys.sh index 22b1c31..0744c4b 100755 --- a/sys.sh +++ b/sys.sh @@ -4,7 +4,7 @@ # CONFIGURATION: # Where backups are to be kept -BACKUPDIR=/home/backups +BACKUPDIR=/home/backups/sys EXCLUDE=sys.exclude # CONSTANTS: @@ -27,4 +27,4 @@ BACKUPPATH=${BACKUPDIR}/sys-${TIMESTAMP}.tar.bz echo -e "[SYS] Performing ${SIZE}MB / (system) backup to ${BACKUPPATH}..." tar --exclude-from=$EXCLUDE \ -cf - / | pv -p -e -r -b -s ${SIZE}m | bzip2 > $BACKUPPATH -echo -e "[SYS] Finished backup to ${BACKUPPATH}" \ No newline at end of file +echo -e "[SYS] Finished backup to ${BACKUPPATH}"