Как говорится, люди делятся на тех, кто не делает бекапы и тех, кто уже делает.
Давно хотел настроить резервирование в облачное хранилище у себя на сервере, но не было времени разбираться с монтированием webdav.
Недавно вышел консольный клиент под Linux Yandex.Disk, оживился Redmine у меня сервере и я начал решать проблему с сохранностью важных данных Redmine, а потом уж по аналогии и все остальное можно будет резервировать.
На официальном сайте размещена инструкция по установке и настройке http://help.yandex.ru/disk/cli-clients.xml.
Благо под Ubuntu есть дистрибутив и устанавливается и настраивается все очень просто. В итоге задача сводится к тому, чтобы просто копировать архивы в папку для бекапов в Yandex.Disk и удалять старые.
Простой скрипт на bash будем запускать раз в сутки ночью с помощью cron:
#!/bin/shbackups_src=/home/yasla/backupsbackups_dest=/home/yasla/Yandex.Disk/backupsproject=redmineproject_src=$backups_src/$projectproject_dest=$backups_dest/$project
# создаем папку для бекапов при необходимостиif [ ! -d "$project_dest" ]thenmkdir -p $project_destfi
# дамп базыmysqldump -uDB_USER -pDB_PASSWORD DB_NAME > $project_src/redmine.sql
# архивируем только пользовательские загруженные файлы и дамп базыtar -czf $project_src/redmine.tgz /path_to_redmine/files $project_src/redmine.sql
# удаляем с яндекс-диска все бекапы кроме 7-ми последнихcd $project_dest && ls -t | tail -n+8 | xargs -I{} rm {}
# копируем архив с файлами в папку яндекс-диска для последующей автоматической синхронизацииcp $project_src/redmine.tgz $project_dest/redmine.`date +'%Y%m%d%H%M%S'`.tgz
Комментариев нет:
Отправить комментарий