Назад | Перейти на главную страницу

Формат архива резервных копий для дельта-синхронизации с Dropbox?

На сервере Amazon EC2 с Linux AMI у меня в настоящее время выполняется ежедневное задание резервного копирования cron:

TMP_BACKUP_FILE="/tmp/backup.tar"
BACKUP_FILE="/home/ec2-user/Dropbox/Backup/backup.tar"

rm -f "$TMP_BACKUP_FILE"
tar cf "$TMP_BACKUP_FILE" \
    /home /root /var/lib/redis /var/spool /etc
mv "$TMP_BACKUP_FILE" "$BACKUP_FILE"
chown ec2-user:ec2-user "$BACKUP_FILE"

Дамп tar загружается в Dropbox:

Однако при мониторинге (с dropbox.py) время загрузки backup.tar в Dropbox, у меня создается впечатление, что клиент Dropbox не использует дельта-синхронизацию. Это плохо:

  1. Без дельта-синхронизации пропускная способность сервера тратится.

  2. Я предоставил общий доступ к папке резервных копий своему личному Dropbox, и так каждый день backup.tar загружается на мой ноутбук (а оттуда он переходит в автономную систему резервного копирования). Без дельта-синхронизации загрузка занимает много времени и снова расходует пропускную способность.

Какой формат архива резервных копий лучше всего подходит для данной цели?

Я мог выполнить синхронизацию с файлом образа, подключенным к циклу. Звучит как хорошая идея?

Обновить

Я только что сделал тест с rdiff утилита, которая является частью librsync, и согласно Википедии Dropbox зависит от librsync. Тест показывает, что разница составляет всего 2,6 МБ, что значительно меньше, чем 354 МБ архива резервных копий. Так что, возможно, tar - подходящий формат для данной цели. Тест:

$ mv ~/Dropbox/Backup/backup.tar /tmp
$ sudo ~/bin/backup.sh
$ mv ~/Dropbox/Backup/backup.tar /tmp/backup_new.tar
$ cd /tmp
$ rdiff signature backup.tar >backup.tar.signature
$ rdiff delta backup.tar.signature backup_new.tar >backup_new.tar.delta
$ ls -lh backup.tar backup_new.tar backup_new.tar.delta
-rw-rw-r-- 1 ec2-user ec2-user 354M Dec 21 13:39 backup_new.tar
-rw-rw-r-- 1 ec2-user ec2-user 2.6M Dec 21 13:55 backup_new.tar.delta
-rw-rw-r-- 1 ec2-user ec2-user 354M Dec 21 00:10 backup.tar

Я спросил на форуме Dropbox о том, как узнать размер разницы, загружаемой Dropbox.