Предлагается один из методов организации бэкапа данных, с которыми производится непосредственная работа и которые постоянно в процессе данной работы меняются. ++ Подготовка
Для начала я отделил те данные, с которыми я работаю сейчас от архива и результатов работы. Это относительно небольшой каталог с активными проектами. Относительно — потому что в нем 14 Гб.
++ Dropbox
Я использую dropbox, потому что он имеет одну приятную особенность — он просто работает. Без лишних усилий. 2 Гб на бесплатном аккаунте мне, конечно, мало — я пользуюсь платным. В принципе вместо dropbox'а я мог бы делать бэкап на свой сервер, но тогда частичное восстановление данных из бэкапа всегда требовало бы быстрого доступа к сети. Меня это не устраивает — я уже попадал в ситуацию, когда случайно удалял с ноутбука нужный мне большой каталог с файлами, не имея быстрого доступа к сети.
Внутри Dropbox у меня большая часть данных, но рабочий каталог с данными над которыми работаю сейчас — нет. Во-первых, потому что в рабочем каталоге у меня часто может быть приватная информация, в том числе чужая. И хотя я облачным сервисам более-менее доверяю, мои клиенты — не всегда, и я должен уважать их политику безопасности.
Во-вторых — данные там могут меняться слишком часто. И быть объемными — например логи отладки. Синхронизация при каждом изменении это перебор.
++ Encfs
И все-таки бэкапы (как и многие другие данные) у меня хранятся в Dropbox. А это означает, как минимум, что при утере ноутбука у злоумышленника окажется очень много ценных данных. И это недопустимо.
Поэтому в Dropbox лежат шифрованные encfs-разделы.
Кроме того, у Dropbox есть один неприятный недостаток — он не различает регистр в именах файлов (из-за совместимости с windows). А значит, если у меня в каталоге есть файлы, скажем, README и readme, то один из них он переименует. Encfs шифрует имена файла, за счет этого вероятность таких пересечений становится минимальной.
Так что я создаю с помощью encfs внутри ~/Dropbox отдельный каталог для бэкапов, и монтирую его куда-нибудь за пределы каталога ~/Dropbox:
mkdir ~/Dropbox/encfs/backup
mkdir ~/backup
encfs ~/Dropbox/encfs/backup ~/backup
++ rdiff-backup
Собственно для бэкапа я использую простейший скрипт:
#/bin/sh
from=$1
to=$2
if [ -d $to ]; then
rdiff-backup "$from" $to
rdiff-backup --remove-older-than 1M $to 2>&1 > /dev/null
fi
Он проверяет наличие каталога (на случай, если encfs раздел не смонтирован), и если он есть — выполняет бэкап.
После чего удаляет из бэкапа старые snapshot'ы (старее месяца).
Этот скрипт в cron'е запускается раз в сутки.
++ Итог
При таком подходе я могу потерять только результаты работы за последние сутки, и не боюсь утечки данных, несмотря на использование облачного сервиса.
И да, так как я параноик, также с помощью rdiff-backup на одной из своих машин я делаю ежедневный backup всего содержимого каталога Dropbox. На тот маловероятный случай, если ошибка на самом сервисе Dropbox приведет к потере данных.
URL: http://mithraen.ru/2012/05/organizaciya-bekapa-rdiff-backup-...
Обсуждается: http://www.opennet.ru/tips/info/2688.shtml