The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Релиз системы резервного копирования BorgBackup 1.1.0

10.10.2017 07:54

Состоялся релиз системы резервного копирования BorgBackup 1.1.0, несколько лет назад ответвившейся от проекта Attic. Система поддерживает дедупликацию, шифрование и сжатие данных в хранилище резервных копий. Основной код проекта написан на языке Python 3, но около 9% критичных к производительности частей оформлены на языке Си. Исходные тексты распространяются под лицензией BSD. Сборки подготовлены для FreeBSD, Linux и macOS.

Отличия от системы Attic сводятся к открытому процессу разработки с более простой организацией приёма изменений, устранению нерешённых в Attic проблем, более компактному и потребляющему меньше памяти формату индекса дедуплицированных блоков, более быстрой реализацией кэша синхронизации, поддержке хранения данных в сжатом виде, использованию шифрования по ключам вместо парольной фразы, эффективному хранению файлов с пустотами внутри (например, образов виртуальных машин), системе блокировок на основе вызова mkdir, расширенным сообщениям об ошибках, индикации прогресса выполнения операций, тестированию в разнообразных ОС.

Возможности и особенности:

  • Экономия дискового пространства в хранилище резервных копий за счёт применения дедупликации (как следствие, снижение избыточности и повышение шансов потерять сразу все бэкапы из-за сбоя в усложнённом хранилище или повреждения эталонных блоков). Объединение дублирующихся данных производится на основе выявления идентичных блоков. Файлы разбиваются на блоки, если блок не встречался ранее - он сохраняется в хранилище, если встречался, то записывается ссылка на уже имеющийся в хранилище блок. Применяемый метод дедупликациии не привязан к файлам и директориям, эффективно обрабатывает операции изменения файлов (переписываются только изменившиеся блоки) и смены позиции блоков внутри файла. Дубликаты объединяются в контексте всего репозитория-хранилища и могут охватывать прошлые резервные копии, бэкапы с различных компьютеров, а также идентичные блоки в том же файле.
  • Высокая производительность - критичный с точки зрения скорости работы код, такой как обработка блоков, сжатие и шифрование, реализован на языке Си с использованием Cython. В BorgBackup также применяется быстрый алгоритм выявления не изменившихся файлов и локальное кэширование индексов, используемых для связывания файлов и блоков в репозитории.
  • Данные хранятся с использованием симметричного шифрования AES c 256-разрядным ключом. Для проверки подлинности зашифрованных данных используется HMAC-SHA256. Данные шифруются на стороне клиента (системы, для которой создаётся резервная копия);
  • Данные в хранилище могут храниться в сжатом виде с использованием алгоритмов lz4 (быстро, но посредственный уровень сжатия) или lzma (медленно, но высокая степень сжатия);
  • Возможность размещения хранилища резервных копий на любом внешнем сервере, на который имеется доступ по протоколу SSH. Для повышения производительности на хост-хранилище могут быть установлены серверные компоненты Borg;
  • Поддержка монтирования резервных копий в форме файловых систем (используется FUSE);
  • Простота установки - BorgBackup поставляется в форме единого исполняемого файла, который может быть запущен без предварительной установки.

Ключевые улучшения в выпуске BorgBackup 1.1.0:

  • Добавлена экспериментальная команда "borg recreate" для переупаковки файлов в существующем архиве, что позволяет организовать дедупликацию между старыми архивами Attic / Borg 0.xx и новым форматом архивов Borg 1.x;
  • Добавлена команда "borg diff" для отображений отличий между двумя архивами;
  • В команде "borg mount" реализовано отображение всех имеющихся версий файлов в версионном представлении;
  • Добавлены дополнительные опции форматирования для команды "borg list", в том числе возможность генерации хэшей и статистики о разбиении каждого файла;
  • В команде "borg create" появилась опция "-C auto,zlib/lz4/..." для включения режима автоматического сжатия, ускорена работа с большим числом файлов, добавлена экспериментальная поддержка масок (--patterns, --patterns-from), реализованы средства управления кэшированием mtime/ctime;
  • Добавлена команда "borg export-tar" для экспорта в формат GNU tar;
  • Появилась возможность прикрепления комментариев к архивам;
  • Добавлены режим шифрования на базе алгоритма BLAKE2b256 и режимы аутентифицированного хранения для гарантирования целостности без шифрования;
  • В индексах репозитория и кэше задействованы контрольные суммы для выявления повреждения информации;
  • Добавлен API для вывода результата выполнения команд "borg list", "borg info" и "borg create" в формате JSON;
  • Реализована возможность ведения лога всех выполненных команд, сохраняемого в формате JSON;
  • В команды "borg list", "borg info", "borg mount", "borg check", "borg delete" и "borg prun" добавлена опция "--prefix", дополняющая опции --glob-archives (-a), --sort-by, --last и --first;
  • По умолчанию включено сжатие lz4.

  1. Главная ссылка к новости (https://mail.python.org/piperm...)
  2. OpenNews: Представлена система резервного копирования BorgBackup 1.0.0
  3. OpenNews: Система резервного копирования Obnam прекращает своё существование
  4. OpenNews: Выпуск системы резервного копирования Bareos 16.2
  5. OpenNews: Выпуск дистрибутива для создания сетевых хранилищ Rockstor 3.9
  6. OpenNews: Выпуск системы резервного копирования Bacula 9.0.0
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/47361-borgbackup
Ключевые слова: borgbackup, backup
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (30) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Анонимм (??), 09:03, 10/10/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Вот если бы сжатие кто сделал многопоточным...  так грустно смотреть в 21 веке, когда процесс бекапа грузит одно ядро, а 100500 простаивают
    (PS сам попытку такое сделать уже предпринимал на основе pigz, но как-то не доделал)
     
     
  • 2.3, Аноним (-), 10:20, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +/
    И как ты, интересно, собрался распараллеливать lz4? Вот lzma2 отлично распараллеливается.
     
     
  • 3.4, Анонимм (??), 10:24, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +/
    да хоть бы распараллелили то, что уже параллелится.
    Вот gzip и lzma2 уже - и большинству бы админов хватило такого выбора с головой
     
     
  • 4.12, Аноним (-), 12:49, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +/
    gzip тоже не параллелится. Подтянул бы матчасть прежде чем хотелки хотеть.
     
     
  • 5.13, Аноним (-), 13:37, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +/
    pigz?
     
     
  • 6.15, Аноним (-), 14:26, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    нет. pigz не параллелит декомпрессию
     
  • 5.14, Аноним (-), 14:03, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +5 +/
    И вообще, что значит не параллелится? Больше одного файла - вот и параллельте :)
     
  • 5.23, Анонимм (??), 18:14, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > gzip тоже не параллелится. Подтянул бы матчасть прежде чем хотелки хотеть.

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

     
  • 3.11, Аноним (-), 12:20, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Вот lzma2 отлично распараллеливается.

    к сожалению, не декомпрессия! На терабайтном архиве 4 кратная разница во времени при распаковке (в зависимости от количества ядер, но потом, конечно, упирается в диск) заставляет пользоваться bzip2. Он умеет.

     
  • 3.17, mumu (ok), 14:51, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    zstd? brotli? Всё открытое, жмет в районе 1 Гб/сек при приемлемом уровне сжатия и возможности распараллеливания.
     
  • 3.27, Аноним (-), 15:52, 12/10/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > И как ты, интересно, собрался распараллеливать lz4?

    На сжатие можно, если высокие уровни: запустил несколько тредов да фигарь там разные куски. У lz4 адресуемое смещение мелкое, степень сжатия от независимой паковки не испортится. На распаковку LZ4 может быть скоростью RAM подперт и там смысла в потоках мало. Можешь разжать небольшой кусок из одного и того же src в dst, посмотреть до какого космоса LZ4 разгоняется если память быстрая.

    > Вот lzma2 отлично распараллеливается.

    Но его скорость работы весьма скромная и никакие потоки ему не помогут.

     
  • 2.6, infector (?), 10:49, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Многопоточность на версию 1.2 заплонирована
     
     
  • 3.7, Анонимм (??), 10:56, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +/
    о, отличные новости!
     

  • 1.5, dkg (?), 10:30, 10/10/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Хорошая система. Еще использую Veeam for Linux.
     
     
  • 2.8, 1 (??), 11:07, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Касперский стырит твои данные.
     

  • 1.9, Сергей (??), 11:17, 10/10/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    радостная весть, очень удобная штука.
     
  • 1.10, Аноним (-), 12:16, 10/10/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > borg mount

    бомба!

     
  • 1.16, Фуррь (ok), 14:46, 10/10/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >BorgBackup поставляется в форме единого исполняемого файла, который может быть запущен без предварительной установки.

    Славный шаг в продолжении Windows-way.

     
     
  • 2.21, Аноним84701 (ok), 16:04, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >>BorgBackup поставляется в форме единого исполняемого файла, который может быть запущен без предварительной установки.
    > Славный шаг в продолжении Windows-way.

    Для утилиты бэкапа (и соотв. – восстановления) "домашнего/локалхостного пользования" – минимальные зависимости и "все свое ношу с собой" вообще-то скорее в плюс. Проще собрать минимальный образ для рекавери, использовать в готовом лайв-диске/флешке в случае "форс-мажора и накрытия тазом" того самого приготовленного образа для рекавери и т.д. и т.п.


     
     
  • 3.28, Аноним (-), 15:55, 12/10/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Зависимость в виде питона - это так чудесно для инструмента бэкапа. В ответственный момент оно грохнется с трэйсом на три страницы, а окажется что это как всегда - версия питона в системе не та. Вся питонятина так делает. И инструменты бэкапа на этом - вот уж нафиг.
     
     
  • 4.29, Аноним84701 (ok), 16:38, 12/10/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Зависимость в виде питона - это так чудесно для инструмента бэкапа.

    А в огороде бузина? Или у кого что болит?
    Читаем глазами:
    >>>> единого исполняемого файла, который может быть запущен без предварительной установки.
    >>> Славный шаг в продолжении Windows-way.
    >>Для утилиты бэкапа (и соотв. – восстановления) "домашнего/локалхостного пользования" – минимальные зависимости и "все свое ношу с собой" вообще-то скорее в плюс.

    Вообще-то, мы в этой ветке вроде как о смысле минимальных зависимостей для бэкапа, а не о том, у кого от чего чуть пониже спины эт-самое.
    > Зависимость в виде питона - это так чудесно для инструмента бэкапа.

    А лучше было бы, если еще и левые пакеты подтягивались через pip?

    > В ответственный момент оно грохнется с трэйсом на три страницы,

    То ли дело натив, да? Ни сегфолтов, ни проблем с зависимостями?
    Тут вон zbackup упоминали - так оно вполне может отвалиться из-за несовместимой версии protobuf, как в самой системе, так и использованной при создании репы-бэкапа.
    А так все хорошо, прекрасная маркиза, ага.

    > грохнется с трэйсом на три страницы, а окажется что это как всегда - версия питона в системе не та.
    > Вся питонятина так делает.

    Т.е. у вас скрипты на питоне падают с трейсом на три страницы? Причем, все только из-за того, что вы так и не удосужились узнать, что у питона аж две ветки, зато ноете в каждой новосте с упоминанием питона?
    Ну, что тут можно сказать – о прямизне ваших рук, познаниях в этой области, как и твердости характера в упорном желании страдать, можно вполне слагать легенды!

    > И инструменты бэкапа на этом - вот  уж нафиг.

    Вообще-то, задачи и цели у бэкапа разные бывают.

     
     
  • 5.30, Аноним (-), 20:45, 12/10/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Минимальные такие зависимости В виде интерпретера на хренадцать метров и его ра... большой текст свёрнут, показать
     

  • 1.18, Ergil (ok), 14:59, 10/10/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Вы и ваши бэкапы будете ассимилированы.
     
     
  • 2.19, Пользователь Debian (?), 15:09, 10/10/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    All your back are belong to ups!
     
  • 2.26, ZetaRam (?), 17:57, 11/10/2017 [^] [^^] [^^^] [ответить]  
  • +/
    ))))
    Сегодня ваши фотографии забекапили, а завтра уже вас.))
     

  • 1.20, Аноним (-), 15:41, 10/10/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    В тексте новости не указано главное преимущество Borg перед Attic: последний уже несколько лет не развивается, что и послужило причиной форка (автор не принимал патчи и сам ничего не делал).

    > файлов с пустотами внутри

    Устоявшееся выражение "sparse file" лучше не переводить.

    > borg prun

    Должно быть "prune".

     
     
  • 2.31, нах (?), 12:55, 13/10/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > В тексте новости не указано главное преимущество Borg перед Attic

    потому что это не преимущество.

    > последний уже несколько лет не развивается

    что вы хотите "развивать" - в бэкапе? (вот с этого места - могут быть и преимущества. Но чаще оказываются поломанные бэкапы старых версий, несовместимость со старыми системами и т д)

     

  • 1.22, TiGR (ok), 18:04, 10/10/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    mount это вещь.
     
  • 1.24, Аноним (-), 22:11, 10/10/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Круто, но добавили бы уже поддержку самой популярной платформы. Для бекапа хомячка много заморочек.
     
  • 1.25, Аноним (-), 22:44, 10/10/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    юзаю zbackup особых улучшений в borg не вижу, что бы начать пользоваться.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру