Я оцениваю Bacula как централизованный инструмент резервного копирования для небольшой сети, где пользователи будут включать и выключать машины непредсказуемо. Некоторые из безголовых Linux-боксов, которые мне нужно создать, предназначены для выключения нажатием кнопки включения / выключения на корпусе, без какого-либо способа сообщить пользователю, чтобы он дождался завершения задания резервного копирования.
Итак, мы не знаем, когда могут быть запущены задания резервного копирования (anacron может в этом помочь, верно?), И мы не знаем, будет ли им разрешено завершиться.
Является ли Bacula разумным выбором для такой среды?
bacula полагается на центрального «директора», который занимается всем планированием. Если система не работает, когда bacula-director
пытается получить это (bacula-fd
), чтобы поговорить с демоном хранилища (bacula-sd
), то по истечении заданного периода времени bacula завершит работу и пометит задание как неудачное. Если он отключен во время выполнения задания, он почти наверняка пометит задание как неудачное.
Насколько мне известно, после сбоя задания нет механизма для его повторной попытки или продолжения, bacula запустится снова в следующий раз, когда это задание будет запланировано.
Я бы предложил использовать rsync
из ящиков на центральный сервер, а затем сделайте резервную копию этого центрального сервера на ленту. В этом случае rsync можно запланировать из cron на каждом компьютере в любое удобное время, а также @reboot. Если система выключена в середине rsync, она завершится при запуске. При использовании такой «принудительной» резервной копии важно поддерживать резервные копии этого центрального сервера, поскольку поврежденный клиент отправит поврежденные данные на сервер.
Bacula больше подходит для использования на сервере, попробуйте Areca.
Хотя я не знаю, как Bacula справляется с этой ситуацией, я только что оценил Backuppc в отношении «исчезающих» клиентов. Backuppc использует простой rsync в качестве своего транспорта и может, таким образом, пометить резервную копию как «частичную», если клиент отключен в середине выполняемого задания. Восстановление из такой ситуации отлично работает.