Введение

BackupPC — это бесплатный пакет программ для резервного копирования с веб-интерфейсом. Кроссплатформенный сервер работает на любом сервере под управлением Linux, Solaris или UNIX. Клиент не требуется, поскольку сам сервер выступает в роли клиента для нескольких протоколов, обрабатываемых другими службами, встроенными в клиентскую ОС. В 2007 году BackupPC был упомянут как одно из трех наиболее известных решений для резервного копирования с открытым исходным кодом, хотя это один из инструментов, которые "потрясающие, но, к сожалению, если о них никто не говорит, многие о них даже не узнают". Дедупликация данных снижает объем дискового пространства, необходимого для хранения резервных копий в пуле хранения. Возможно использование в качестве решения D2D2T, если функция архивирования BackupPC используется для резервного копирования пула хранения на ленту. BackupPC не является системой резервного копирования на уровне блоков, как Ghost4Linux, а выполняет резервное копирование и восстановление на основе файлов. Таким образом, он не подходит для создания резервных копий образов дисков или необработанных разделов. BackupPC включает клиент Server Message Block (SMB), который можно использовать для резервного копирования сетевых ресурсов компьютеров под управлением Windows. Парадоксально, но при такой настройке сервер BackupPC может находиться за NAT-брандмауэром, в то время как компьютер Windows работает через публичный IP-адрес. Хотя это может быть нежелательно для SMB-трафика, это более полезно для веб-серверов, работающих по протоколу Secure Shell (SSH) с установленными GNU tar и rsync, поскольку позволяет разместить сервер BackupPC в подсети, отделенной от DMZ веб-сервера. Распространяется под лицензией GNU General Public License.

Поддерживаемые протоколы

BackupPC поддерживает NFS, SSH, SMB и rsync. Он может создавать резервные копии Unix-подобных систем, используя встроенные ssh и tar или rsync, таких как Linux, BSD и OS X, а также сетевые ресурсы Microsoft Windows с минимальной настройкой. Для использования этих протоколов в Windows требуются сторонние реализации tar, rsync и SSH (например, Cygwin).

Выбор протокола

Выбор между tar и rsync определяется доступным клиенту аппаратным обеспечением и пропускной способностью сети. Клиенты, использующие rsync, потребляют значительно больше процессорного времени, чем клиентские машины, использующие tar или SMB. Клиенты, использующие SMB или tar, потребляют значительно больше пропускной способности, чем клиенты, использующие rsync. Эти компромиссы обусловлены различиями между протоколами. При использовании tar или SMB каждый файл передается целиком, что требует небольших затрат процессорного времени, но использует максимальную пропускную способность. Метод rsync вычисляет контрольные суммы для каждого файла как на клиентской, так и на серверной машинах, что позволяет передавать только различия между файлами; это требует больше процессорных ресурсов, но минимизирует использование пропускной способности.

Версия 3.x

BackupPC использует комбинацию жестких ссылок и сжатия для снижения общего объема дискового пространства, необходимого для хранения файлов. При первом полном резервном копировании все файлы передаются в хранилище, опционально сжимаются, и затем сравниваются. Идентичные файлы связываются жесткими ссылками, что требует лишь одной дополнительной записи в каталоге. В результате, опытный системный администратор потенциально может создать резервные копии десяти ноутбуков Windows XP с 10 ГБ данных на каждом, и если 8 ГБ данных повторяются на каждом устройстве (бинарные файлы Office и Windows), то может показаться, что потребуется 100 ГБ, но фактически будет использовано только 28 ГБ (10 × 2 ГБ + 8 ГБ). Сжатие данных в хранилище позволит еще больше снизить этот объем. При просмотре резервных копий инкрементные резервные копии автоматически восстанавливаются до предыдущей полной резервной копии, поэтому каждая резервная копия выглядит как полный и самодостаточный набор данных.

Версия 4.x

Версия 4.x может использовать репозитории V3.x, но все новые резервные копии создаются в новом формате (бесшовное обновление). Общая производительность выше, чем в версии V3.x.