Advertisement
Guest User

Untitled

a guest
Oct 8th, 2016
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.73 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. USER=*****
  4. PASSWORD=*****
  5. HOST=************
  6.  
  7. BACKUP=/backup
  8. OLD=7 # Сколько дней хранить бэкапы
  9.  
  10. # Создаем директорию для сегодняшнего бэкапа
  11. DIR=$BACKUP/`date '+%Y-%m-%d'`
  12. mkdir $DIR
  13. cd $DIR
  14.  
  15. # Сохраняем базы данных
  16. for i in `mysql -h $HOST -u $USER -p$PASSWORD -e'show databases;' | grep -v information_schema | grep -v Database`;
  17. do
  18. # Не обрабатываем служебные БД и все БД сайтов modx-test.com, у них имена типа s1234.
  19. if [[ "$i" != "mysql" && "$i" != "performance_schema" && ! "$i" =~ ^s[0-9] ]]
  20. then mysqldump --skip-lock-tables -h$HOST -u$USER -p$PASSWORD $i | bzip2 -c > www-$i.sql.bz2;
  21. fi
  22. done
  23.  
  24. # Сохраняем системные директории
  25. tar -cjf sys-etc.tar.bz2 /etc/
  26. # tar -cjf sys-log.tar.bz2 /var/log/
  27. # tar -cjf sys-root.tar.bz2 /root/
  28.  
  29. # Сохраняем сайты
  30. for i in `ls /var/www/`;
  31. do
  32. # Обрабатываем все, кроме сайтов modx-test.com
  33. # tar -cjf www-$i.tar.bz2 /var/www/$i --exclude=cache/* --exclude=media/* --exclude=phpmyadmin_secret/*;
  34.  
  35. done
  36.  
  37. # Чистим старые логи и бэкапы
  38. find /var/log -type f \( -name "*.gz" -o -name "*.1*" \) -exec rm '{}' \;
  39.  
  40. # Если эта команда верно показывает старые директории после бэкапа - расскомментируйте следующую
  41. find $BACKUP/* -maxdepth 0 -ctime $OLD -exec echo '{}' \;
  42.  
  43. # Эта команда удаляет старые резервные копии, и я ее закомментировал на всякий случай.
  44. #find $BACKUP/* -maxdepth 0 -ctime $OLD -exec rm -r '{}' \;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement