Бэкап из FreeBSD на яндекс диск

Тема в интернете освещена довольно хорошо, тем не менее больше для себя сделаю заметку, так сказать "от и до", в качестве кукбука для будущих обращений. Яндекс диск пока тем хорош, что выдает после простых операций 10 гигабайт места бесплатно (чего достаточно для хранения большинства данных своих веб серверов и их баз данных, плюс еще конфигураций и настроек серверов, ну и персональных данных за одно), и поддерживает протокол WebDAV, по которому удобно и безопасно передавать данные в автоматическом режиме.
Прежде всего следует зарегистрировать учетную запись в яндекс диске, пройти несколько начальных шагов и получить 10 гигабайт дискового пространства.

Далее нужно поставить порт http://www.freshports.org/sysutils/fusefs-wdfs
/usr/ports/sysutils/fusefs-wdfs
make install clean rehash

Стандартно в /etc/rc.conf добавить:
fusefs_enable="YES"

Ну и запустить установленный порт:
/usr/local/etc/rc.d/fusefs start

Нужно создать директорию для монтирования и для хранения локальных бэкапов. Я использую задуманный для этого каталог /mnt и /usr/home соответственно (стандартных прав будет достаточно):
mkdir /mnt/backup
mkdir /usr/home/backup

Можно проверить подключение к яндекс диску. Кстати обратил внимание, что в пароле кавычки не экранируют пароль. У меня на отработке сценария в пароле была запятая, так строкой wdfs подключаться не хотел:
wdfs https://webdav.yandex.ru /mnt/backup -o accept_sslcert,username=myaccountname@yandex.ru,password='mypassword',allow_other

Ну и собственно простенький sh скрипт резервного копирования нужных данных:
tar -cf /usr/home/backup/content.tar /usr/home/website &&
gzip /usr/home/backup/content.tar &&
wdfs https://webdav.yandex.ru /mnt/backup -o accept_sslcert,username=myaccountname@yandex.ru,password='mypassword',allow_other &&
cp -f /usr/home/backup/content.tar.gz /mnt/backup/content.tar.gz &&
umount -f /mnt/backup &&

Можно добавить переименование старых архивов перед созданием новых в соответствующих местах скриптика, получим по два варианта бэкапа, предыдущий и текущий:
mv -f /usr/home/backup/content.tar.gz /usr/home/backup/old_content.tar.gz
mv -f /mnt/backup/content.tar.gz /mnt/backup/old_content.tar.gz

Ну и повесить этот скрипт например на cron.

Поделиться

Опубликовать в Facebook
Опубликовать в LiveJournal

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>