LINUX.ORG.RU
ФорумAdmin

Нужно сделать инкреминтальный backup в сжатом виде.

 ,


2

2

Задача такая:

Приложение выкладывает файлы ежедневно в каталог со множеством подкаталогов.

Несколько раз в день rsync переносит то, что добавилось в backup. Т.е. переносится только новое и в итоге мы имеем копию.

rsync -avz -e "ssh -i losevo" losevo@losevo.ru:/home/losevo/storage /iSCSI2/attachments

Теперь задумываюсь, что бы хранить не сами файлы, а нечто сжатое. Файлы сжимаются легко, сейчас их порядка 100Гб, а получается около 15Гб. Лишь бы каждый раз передавать только разницу.

Все, что читал или жмут и передают все стразу, или не жмут.

Подскажите направление, куда копать?


Теперь задумываюсь, что бы хранить не сами файлы, а нечто сжатое. Файлы сжимаются легко, сейчас их порядка 100Гб, а получается около 15Гб. Лишь бы каждый раз передавать только разницу.

ну сделай binary diff старого и нового

потом сожми и передавай.

Вот только вопрос: а будет-ли это лучше rsync? Особенно учитывая, что у тебя ssh, которая сама сжимать умеет:

Compression Specifies whether to use compression. The argument must be “yes” or “no”. The default is “no”.

emulek
()

и да, предупреждаю:

Сначала делай diff, а только потом его сжимай.

НЕ наоборот! Иначе никакой выгоды не будет.

emulek
()

man rsync на предмет опции --write-batch

Legioner ★★★★★
()
Последнее исправление: Legioner (всего исправлений: 1)

Посмотри duplicity, он простой и умеет что нужно.

Deleted
()

rsnapshot, duplicity, rdiff-backup ... тысячи их.

beastie ★★★★★
()
Ответ на: комментарий от emulek

ну сделай binary diff старого и нового

тут немного проще: файлы и директории только добавляются, никогда не уничтожаются и никогда не исправляются. Т.е. в принципе можно брать и пересылать в backup только новые файлы.

kpush
() автор топика
Ответ на: комментарий от Black_Roland

duplicity, bareos, backup ninja

спасибо, начинаю читать

Вообще у меня идея возникла сделать на стороне backup хранилища диск с разделом со сжатием или еще как то, что бы контроль backupов был проще.

Сейчас у меня проще некуда: с обоих сторон одинаковые папки с файлами. В любую папку захожу и вижу одинаковое. А когда это надо распаковывать, что бы посмотреть уже доверия меньше.

Вот и искал, что rcync или подобно может делать на выходе архивный файл типа tar.gz по которому я так же легко смогу ходить в mc .

kpush
() автор топика
Ответ на: комментарий от kpush

файлы и директории только добавляются

а… Тогда man find на предмет -newer

Что-то типа

#!/bin/bash
set -e
:>archive.tar
[ -w lastbackup ] || touch lastbackup
find source_dir/ -newer lastbackup ! -exec tar -avvf archive.tar {} + -quit
xz archive.tar
touch lastbackup
как-то так, не проверил

emulek
()

Ну я бы попробовал потрогать zfs. Оно и сжимать умеет, и diff передавать умеет.

DALDON ★★★★★
()

Ещё можешь покопать в сторону rdiff-backup. Передавать он будет новые изменения полностью, а вот разницу сжимать, и откладывать. Легко и просто будешь видеть только последнюю копию. С остальными - или через rdiff-fs, или ждать распаковки.

DALDON ★★★★★
()
Ответ на: комментарий от kpush

Сейчас у меня проще некуда: с обоих сторон одинаковые папки с файлами. В любую папку захожу и вижу одинаковое. А когда это надо распаковывать, что бы посмотреть уже доверия меньше.

Тогда какая-нибудь облачная ФС подойдет, типа GlusterFS, хотя точно не знаю как она работает.

Но вообще я бы не боялся за надежность. У Duplicity, например это простые tar.gz зашифрованные gpg, у Bareos есть инструменты для извлечения файлов из томов, а Backupninja по моему вообще всяко-разно может бэкапить, в том числе и в tar. Под капотом обычно какие-то простые вещи используются, и с восстановлением больших сложностей не должно быть.

Black_Roland ★★★★
()
Ответ на: комментарий от kpush

Вообще у меня идея возникла сделать на стороне backup хранилища диск с разделом со сжатием или еще как то, что бы контроль backupов был проще.

Еще появилась идея как можно сделать: монтируешь удаленный диск любым способом, а на бэкапящейся стороне делаешь SquashFS. В SquashFS данные можно дописывать, т.е. что-то типа инкрементного бэкапа даже получится, только нужно периодически пересоздавать том. SquashFS можно просто примонтировать и смотреть содержимое, а еще оно сжатое.

Но я недоверительно отношусь к велосипедом, лучше использовать нормальное решение для бэкапов.

Black_Roland ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.