Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- scrname=minecraft
- mcuser=minecraft
- mcb=/home/minecraft/backups/servername/backups_hourly
- src=/ssd/servername/
- screen=/usr/bin/screen
- #exclude='backups/*'
- #exclude='database.db'
- exclude='playerlogger.*'
- iterations=12
- mcprocess=$(ps -eaf | grep java | grep cauldron | awk '{print $1}')
- if [ "$mcprocess" == "$mcuser" ]; then
- $screen -d -r $scrname -p 0 -X stuff "$(printf '\r')"
- # $screen -d -r $scrname -p 0 -X stuff "say Initiating Hourly backup! $(printf '\r')"
- $screen -d -r $scrname -p 0 -X stuff "save-off $(printf '\r')"
- $screen -d -r $scrname -p 0 -X stuff "save-all $(printf '\r')"
- sleep 1
- fi
- # Backup Database
- mysqldump --opt --user=root gpp_servername > $src/gpp_servername.sql
- cd $mcb
- oldest=`printf "%03g" ${iterations}`
- if [ -e minecraft.${oldest} ]; then rm -rf minecraft.${oldest}; echo Removing ${oldest}; fi
- start=`expr ${iterations} - 1`
- for i in `seq -f "%03g" ${start} -1 0`; do
- oneup=`expr ${i} + 1`
- oneup=`printf "%03g" ${oneup}`
- if [ -e minecraft.${i} ]; then mv minecraft.${i} minecraft.${oneup}; echo Moving ${i} to ${oneup}; fi
- done
- if [ -e minecraft.001 ]; then
- rsync -a --exclude=$exclude --delete --link-dest=$mcb/minecraft.001 $src $mcb/minecraft.000/
- else
- rsync -a --exclude=$exclude --delete $src $mcb/minecraft.000/
- fi
- if [ "$mcprocess" == "$mcuser" ]; then
- $screen -d -r $scrname -p 0 -X stuff "save-on $(printf '\r')"
- # $screen -d -r $scrname -p 0 -X stuff "say Hourly backup complete! $(printf '\r')"
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement