ansible/roles/shell/files/usr/local/bin/backup

36 lines
886 B
Bash

#!/bin/bash
DATE=$(date +%Y%m%d)
BACKUPS=/var/backups
find $BACKUPS -name "*.tgz" -mtime +3 -exec rm {} \;
tar -cz \
--exclude ".nobackup" \
--exclude "nobackup" \
--exclude "/home/irc/*" \
--exclude='/home/chuck/*' \
--exclude='/home/slip/*' \
--exclude='/home/angelok/*' \
--exclude='/home/usernameak/*' \
--exclude='/home/ubergeek/*' \
--exclude='/home/amcclure/*' \
--exclude='/home/fosslinux/*' \
--exclude='/home/zszoke/*' \
--exclude='/home/duitser/*' \
/home/ \
/var/games/minetest-server/.minetest/ \
/var/lib/minecraft/paperclip/ \
/var/lib/bzflag/ \
/var/lib/znc/ \
/var/spool/cron/ \
/var/spool/anacron/ \
-f $BACKUPS/$DATE.tgz
mysqldump --all-databases > $BACKUPS/$DATE-all_databases.sql
tar --remove-files -cz $BACKUPS/$DATE-all_databases.sql \
-f $BACKUPS/$DATE-all_databases.sql.tgz
chown root:sudo $BACKUPS/$DATE*.tgz
chmod 640 $BACKUPS/*.tgz