Guest User

Untitled

a guest
Aug 29th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.78 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. if ! [ $(id -u) = 0 ]; then
  4. echo "This script must be run as root"
  5. exit 1
  6. fi
  7.  
  8. source_dir=""
  9. stamp=`date +"%Y-%m-%d"`
  10. backups="/var/backups"
  11. backup_dir="${backups}/${stamp}"
  12. backup_s3=""
  13.  
  14. db_name=""
  15. db_host=""
  16. db_user=""
  17. db_pass=""
  18.  
  19. echo "Backup starting..."
  20. sudo -u www-data "${source_dir}/occ" maintenance:mode --on
  21. mkdir -p $backup_dir "${backup_dir}/data"
  22.  
  23. echo "Backing up database..."
  24. sudo mysqldump --single-transaction -h $db_host -u $db_user -p$db_pass $db_name > "${backup_dir}/db.sql"
  25.  
  26. echo "Backing up files..."
  27. rsync -avx $source_dir "${backup_dir}/data"
  28.  
  29. echo "Sync to S3..."
  30. # TODO: Delete local folders that are older than a week
  31. aws s3 sync --delete $backups "s3://${backup_s3}"
  32.  
  33. sudo -u www-data "${source_dir}/occ" maintenance:mode --off
  34. echo "Backup finished."
Add Comment
Please, Sign In to add comment