Guest User

Untitled

a guest
May 19th, 2018
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.41 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. BACKUPDIR="/home/backups"
  4.  
  5. SYSBACKUPDIR="${BACKUPDIR}/files"
  6.  
  7. MYSQLUSER="root"
  8. MYSQLPASS="change_me"
  9. MYSQL_OUTDIR="${BACKUPDIR}/mysql"
  10.  
  11. FTPUSER="backup"
  12. FTPPASS="password"
  13. FTPSERVER="backup.dc.volia.com"
  14.  
  15. PATH=PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
  16.  
  17. #BACKUP DPKG
  18. dpkg --get-selections > $BACKUPDIR/dpkg-selections.txt
  19.  
  20. #BACKUP MYSQL
  21. if [ ! -d $MYSQL_OUTDIR ]; then
  22. mkdir -p $MYSQL_OUTDIR
  23. fi
  24.  
  25. cd /var/lib/mysql
  26. for i in * ; do
  27. if [ -d $i ]; then
  28. mysqldump --user=$MYSQLUSER --password=$MYSQLPASS --opt --add-drop-table -q -Q -e $i > $MYSQL_OUTDIR/$i.sql
  29. bzip2 --best -f $MYSQL_OUTDIR/$i.sql
  30. fi
  31. done
  32.  
  33. #BACKUP SYSTEM
  34. rdiff-backup --remove-older-than 20D $SYSBACKUPDIR
  35.  
  36. rdiff-backup --exclude $BACKUPDIR \
  37. --exclude /home/andrew \
  38. --exclude '**.log' \
  39. --include /var/spool/cron/crontabs \
  40. --include /var/backups \
  41. --include /etc \
  42. --include /root \
  43. --include /var/www \
  44. --include /home \
  45. --include /usr/local \
  46. --include /var/lib/dpkg/status \
  47. --include /var/lib/dpkg/status-old \
  48. --exclude '/*' \
  49. / $SYSBACKUPDIR
  50.  
  51. #TAR ALL THE STUFF
  52. tar -c $BACKUPDIR/files > $BACKUPDIR/files.tar
  53.  
  54.  
  55. cd $BACKUPDIR
  56. for i in * ; do
  57. if [ "$i" != "files" ]; then
  58. wput --remove-source-files --dont-continue --reupload --quiet $i ftp://$FTPUSER:$FTPPASS@$FTPSERVER/
  59. fi
  60. done
Add Comment
Please, Sign In to add comment