Ubuntu Server: Возможен ли автобэкап каталога и MySQL бд с добавлением в архив и загрузкой на облако?

В общем, суть в заголовке вопроса.

Есть ли готовые решения для такого запроса и если нет, как можно реализовать подобное, в какую сторону смотреть и т.п.

P.S. Облако - Яндекс.Диск.
  • Вопрос задан
  • 610 просмотров
Решения вопроса 2
hamnsk
@hamnsk
Системный администратор, Linux/Windows
#! /bin/sh
to_cat=/backup
date_time=`date +"%Y-%m-%d_%H-%M-%S"`
echo Start Backup Process $date_time >> /var/log/vhc_backup.log
mysqldump -uwordpressuser -pПарольТут ИмяБазы > $to_cat/mysql_$date_time.sql
tar -cjf $to_cat/vhc_wordpress_$date_time.tar.bz2 $to_cat/mysql_$date_time.sql
rm $to_cat/mysql_$date_time.sql
tar -cjpf $to_cat/vhc_etc_$date_time.tar.bz2 /etc /shscripts
tar -cjpf $to_cat/vhc_vmail_$date_time.tar.bz2 /var/vmail
tar -cjpf $to_cat/vhc_html_$date_time.tar.bz2 /var/www/html
date_time_end_arch=`date +"%Y-%m-%d_%H-%M-%S"`
echo End creating archives $date_time_end_arch >> /var/log/vhc_backup.log
# Удаляем копии, которые старше 3 дней
find $to_cat -name '*.gpg' -mtime +1 -delete
# Копирование резервного архива на удаленный FTP-сервер
echo Start FTP Copying $date_time_end_arch >> /var/log/vhc_backup.log
ftpuser='Имя_Польз'
password='Пароль'
ftpserver='IP_Address'
file_etc=vhc_etc_$date_time.tar.bz2
file_vmail=vhc_vmail_$date_time.tar.bz2
file_html=vhc_html_$date_time.tar.bz2
file_mysql=vhc_wordpress_$date_time.tar.bz2
#Шифруем архивы с помощью gpg
gpg -e -r Key $to_cat/$file_etc
gpg -e -r Key $to_cat/$file_vmail
gpg -e -r Key $to_cat/$file_html
gpg -e -r Key $to_cat/$file_mysql
rm $to_cat/*.tar.bz2
#Открываем сессию с FTP
ftp -n $ftpserver << EOF
user $ftpuser $password
binary
put $to_cat/$file_etc.gpg /dayly_bkp/$file_etc.gpg
put $to_cat/$file_vmail.gpg /dayly_bkp/$file_vmail.gpg
put $to_cat/$file_html.gpg /dayly_bkp/$file_html.gpg
put $to_cat/$file_mysql.gpg /dayly_bkp/$file_mysql.gpg
bye
EOF

date_time_end_ftp=`date +"%Y-%m-%d_%H-%M-%S"`
echo End FTP Copying $date_time_end_ftp >> /var/log/vhc_backup.log

Модернизируйте на свое усмотрение, у меня бекапит содержимое папки с сайтами, базу, бекаит пару системных каталогов, кладет их на сервер и сливает на фтп, в папке на сервере хранятся копии за 3 дня....

думаю если прикрутить сервисы синхронизации, то можно заливать и в облако удалив секцию с фтп. Шифрование на ваше усмотрение.
Ответ написан
Комментировать
landergate
@landergate
IT-шный jack-of-all-trades
Готовых средств для такой совмещённой задачи ни в одном дистрибутиве нет.

Можно написать bash-скрипт, делающий следующее:
  1. Дамп либо через mysqldump (см. подводные камни с блокировкой таблиц), либо с xtrabackup (только для InnoDB), именующий его по дате.
  2. Другим инструментом (rclone, duplicity) синхронизировать его в нужное облако или на удалённый сервер (rsync, scp).
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Spetros
@Spetros
IT-шник
Возможен, например, скриптами запускаемыми cron.
Ответ написан
Комментировать
opium
@opium
Просто люблю качественно работать
Personally extra backup чтобы сделать снимок файлов работает только для иннодб, ну а в облако грузрте любым облачным клиентом что нравится например дуплисити
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы