Bacula

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Bacula
Тип программное обеспечение для резервного копирования[d]
Написана на C++[2]
Интерфейс wxWidgets[3] и GTK[3]
Операционные системы Unix-подобная операционная система и Windows
Первый выпуск январь 2000
Последняя версия
Лицензия AGPL v3.0[4]
Сайт bacula.org (англ.)
Логотип Викисклада Медиафайлы на Викискладе

Bacula — кроссплатформенное клиент-серверное программное обеспечение, позволяющее управлять резервным копированием, восстановлением и проверкой данных по сети для компьютеров и операционных систем различных типов.

По состоянию на середину 2010-х годов поддерживаются клиентские части для удалённого резервного копирования для Linux (включая Linux на zSeries), NetBSD, FreeBSD, OpenBSD, Solaris, HP-UX, Tru64, IRIX, Microsoft Windows, Mac OS X.

Bacula также может выполняться полностью на единственном компьютере или распределённо, на нескольких и может записывать резервные копии на различные типы носителей, включая ленточные библиотеки, системы хранения и внутренние накопители серверов.

Реализована как сетевая клиент-серверная программа для резервного копирования, архивирования и восстановления. Предлагая широкие возможности для управления хранилищами данных, облегчает поиск и восстановление потерянных или повреждённых файлов. Благодаря модульной структуре, Bacula масштабируется и может работать как на маленьких так и на крупных системах, состоящих из сотен компьютеров, расположенных в большой сети.

Для системы реализовано несколько графических пользовательских интерфейсов (в том числе, несколько веб-интерфейсов) различной степени сложности.

Структура[править | править код]

Здесь и далее английские термины даны в соответствии с оригинальной документацией.

  • Director (DIR) — осуществляет централизованный контроль и администрирование всего комплекса задач. Планирование и управление заданиями на резервное копирование (Job). Обслуживание Каталога (Catalog) — центральной БД для хранения метаданных.
  • File Daemon (FD) — сервис, выполняющий непосредственное копирование, восстановление и проверку данных по запросу Director. File Daemon должен быть установлен на каждой клиентской машине. File Daemon обменивается информацией с Director и Storage Daemon.
  • Storage Daemon (SD) — читает и пишет данные на физический носитель: диск, ленту, DVD, USB.
  • Console — управляющая консоль оператора или администратора. Поддерживаются ACL для разных пользователей консоли. Типы консолей: TTY, wxWidgets (GUI) для Linux, Unix, Win32, GNOME (GUI), несколько веб-интерфейсов, Qt4.
  • Catalog database — база данных SQL : MySQL, PostgreSQL, или SQLite для хранения метаданных.
  • Tray Monitor — апплет GNOME/KDE/Win32 GUI для показа активности Director, File daemons, Storage daemon в реальном времени.

Все указанные компоненты могут находиться как на одном компьютере, так и на нескольких, объединённых в сеть.

Защита информации[править | править код]

  • Все сервисы авторизуются с использованием CRAM-MD5.
  • Сервисы Director и Storage могут быть запущены от имени обычного пользователя.
  • MD5, SHA1 сигнатуры для каждого файла в архиве.
  • Контрольная CRC сумма для каждого блока, записанного на Том (Volume).
  • Использование ACL для управляющей консоли.
  • Шифрование обмена с помощью TLS.
  • Шифрование данных с помощью PKI.
  • Проверка данных, похожая на систему обнаружения атак Tripwire.

Технические детали[править | править код]

  • Поддержка операционных систем: Linux (все версии, включая zSeries), Win32, Solaris, *BSD, Mac OS X, Irix, Tru64, AIX, HP-UX.
  • Поддержка Юникода (UTF-16 для Win32 и UTF-8 для UNIX, Linux; имена файлов везде хранятся в UTF-8).
  • Резервное копирование с использованием системы спулинга.
  • Резервное копирование и восстановление POSIX Access Control Lists (ACL), атрибутов доступа Win32, Mac.
  • Поддержка больших файлов >2 ГБ.
  • Поддержка 64-битной архитектуры.
  • Многопоточная реализация.
  • Язык программирования C, C++.

История проекта[править | править код]

Проект стартовал в январе 2000 года. 14 апреля 2002 года впервые опубликован исходный код системы на SourceForge (версия 1.16). Крупные выпуски: 2.0.0 (январь 2007 года), 3.0.0 (9 апреля 2009 года), 5.0.0 (25 января 2010 года), 7.0.0 (27 марта 2014 года).

В 2010 году активные разработчики проекта во главе с Марко ван Вирингеном, несогласные с политикой развития проекта, ответвили открытую в исходных кодах часть системы в новый проект Bareos. В частности, претензии были связаны с тем, что создатели Bacula направили свои усилия на закрытие исходного кода, внося изменения только в «закрытую» часть проекта, перестали принимать в проект сторонние исправления и даже начали сокращать возможности свободной" версии пакета[5]. В октябре 2014 вышла бета-версия проекта Bareos, в которую были включены многие новые возможности по сравнению с исходным проектом[6].

Примечания[править | править код]

  1. Bacula Release 13.0.2
  2. http://sourceforge.net/projects/bacula/
  3. 1 2 https://www.bacula.org/what-is-bacula/system-requirements/
  4. http://www.bacula.org/git/cgit.cgi/bacula/tree/bacula/LICENSE
  5. Why have you started a fork from bacula.org? Архивировано из оригинала 15 октября 2014 года.
  6. Bareos 14.2 (beta). Дата обращения: 10 октября 2014. Архивировано из оригинала 15 октября 2014 года.

Ссылки[править | править код]