Дата
Автор
Денис Куландин
Источник
Сохранённая копия
Original Material

Rsnapshot и Borgbаckup: две программы инкрементального резервного копирования


Данная статья рассчитана на технических специалистов. В статье будет рассказано о двух утилитах для организации инкрементального резервного копирования Rsnapshot и Borgbackup.

Rsnapshot – базирующаяся на rsync утилита на Perl для создания резервных копий. Особенностью является ориентация на создание полных снапшотов файловой системы через заданный интервал времени, для экономии места на диске, не изменившиеся с момента первого бэкапа файлы ссылаются на оригинальный файл с помощью жестких ссылок.

Borgbackup (кратко: Borg) это дедуплицирующая программа для резервного копирования. Опционально доступны сжатие и шифрование данных. Благодаря дедупликации резервное копирование происходит очень быстро.

Важное преимущество Rsnapshot на Borgbackup в том, что он потребляет мало ресурсов (как CPU так и RAM) и фактически базируется на инструментах операционной системы: утилита rsync, команда копирования жестких ссылок. Это позволяет использовать Rsnapshot даже на ограниченных в ресурсах встроенных системах. Например, на маршрутизаторах.

Borgbackup, несмотря на то, что требует сравнительно больше ресурсов, существенно быстрее, нежели Rsnapshot, производит инкрементальное копирование и более эффективно расходует место благодаря возможности сжатия.

Также Borg позволяет шифровать данные стороне клиента, что позволяет хранить архивы даже на облачных хранилищах без опасения утечки информации. Rsnapshot, напротив, не может хранить архивы на удаленной файловой системе в силу конструктивных ограничений.

Еще одно отличие в том, что с помощью Rsnapshot можно копировать файлы с удаленных серверов на сервер, где установлен Rsnapshot.

Крайне желательно, чтобы при этом на удаленном сервере была установлена утилита rsync, это позволит существенно ускорить инкрементальное копирование, так как будут скопированы только измененные файлы. С Borg это будет существенно медленнее, так как пока это можно сделать только примонтировав удаленную файловую систему.

Как Rsnapshot, так и Borg можно использовать для локального резервного копирования, добавив в cron.

Как было сказано выше, Borg будет более эффективно расходовать место, однако Rsnapshot можно применить для моментального доступа к файлу в режиме чтения и записи.