Резервное копирование серверов Linux/Unix

Системы резервного копирования данных Linux различаются по функционалу, позволяя самостоятельно устанавливать типы копирования, время, протоколирование. Базовый набор требований к сетевым системам включает возможность:

  • шифрования файлов;
  • создания полных и инкрементных копий;
  • поддержку удаленного доступа;
  • ресурсоемкость;
  • техподдержку;
  • простой и удобный интерфейс.

Бэкап желательно производить при помощи liveCD, usb-hdd, соседнего раздела или флешки. Если простой системы даже в течение нескольких минут критичен, есть возможность производить копирование непосредственно из-под системы.  При организации системы резервного копирования для Linux преимущество отдается утилитам tar и dd благодаря их предустановленности и легкости использования.

Backup серверов Unix и Linux

Самой старой утилитой, пригодной для создания образов сервера, является dd, но несмотря на простоту в использовании, у нее отсутствуют некоторые полезные опции. Команда работает напрямую с информаций, записанной в конкретной области харда.

Ее основными преимуществами является универсальность, умение работать с разделами, содержащими экзотические ФС, и образами как реальными разделами, а также предоставлением сохранения права доступа и иных атрибутов файловой системы. Главными недостатками являются большой объем свободного пространства при распаковке, создание только полной копии, нестандартность работы утилиты.

При создании архивов и копий системы используется многоопциональная команда tar. Она производит инкрементные бэкапы, извлекает из архива и добавляет в него любые файлы, присутствуя по всех системах Linux.

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

Каждому типу копирования присущи свои особенности.

  • Инкрементальное. Выполняется при помощи утилиты RSync. Она синхронизирует файлы и директории с минимизацией данных.
  • Дифференциальное. Использует утилиту rdiff-backup, перебирающую файлы для поиска разницы.
  • Полное. Для уровня файловой системы используется dump, имеющий более высокую скорость работы, нежели RSync. На уровне устройства применяются mdraid и DRBD либо связка LVM + dd.

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

  1. Restic. Кроссплатформенное ПО на языке Go умеет оперативно шифровать данные в режиме счетчика и аутентифицировать их. Является лучшим приложением для Linux, обеспечивающим защиту для всей копируемой информации.
  2. Borg. Бесплатное ПО имеет функцию дедупликации, обеспечивающую эффективное копирование частей в едином хранилище. Подходит для ежедневного применения, сохраняя только измененные файлы.
  3. Fwbackup. Бесплатное, кроссплатформенное, мультифункциональное ПО с понятным интерфейсом. Обладает гибкостью конфигурирования, возможностью удаленного копирования и резервирования файловой системы целиком.
  4. Duplicati. Бесплатный клиент для хранения зашифрованных, инкрементных, сжатых копий на удаленных серверах и в облаке. Имеет планировщик, позволяющий регулярно производить резервное копирование.
  5. Bacula. Инструмент для управления процессами копирования и восстановления, а также проверки данных с компьютеров разных типов на едином сервере, переданных по сети. Создает дубликаты резерва на различных носителях.
  6. Bareos. Эффективное межсетевое ПО, умеющее копировать, архивировать и восстанавливать структуру для всех ОС.
  7. Barman. Инструмент для администрирования на языке Python, подходит для экстренного подъема данных для серверов PostgreSQL. Позволяет создавать виртуальные копии в наиболее ценных средах для бизнеса.
  8. BackupPC. Корпоративная система с высокой производительностью, обслуживающая компьютеры всех типов, использующие Linux. Отличается простотой установки и легкостью настройки. Имеет функции дедупликации, различные параметры восстановления и гибкую конфигурацию.
  9. Bup. Эффективный инструмент, обеспечивающий инкрементное копирование и полную дедупликацию, в т.ч. образов виртуальных машин. Язык программирования Python в сочетании с элементами С дает легкое расширение и возможность поддержки.
  10. Lsyncd. Простое решение для «живых» зеркал, синхронизирующий даже незначительные перемены дерева локальных каталогов. Легкая установка, нетребовательность к новым устройствам и файловым системам без снижения производительности.
  11. Rclone. Программное обеспечение командной строки, синхронизирующее для разных клиентов облачного хранилища файлы и каталоги. Работает с большинством популярных облачных провайдеров. Имеет дополнительное криптошифрование и кэш.
  12. Veeam Agent. Бесплатное ПО для создания копий образов, а также отдельных файлов и томов диска. Возможности программы включают копирование – полное и инкрементальное, создание снимков операционных систем. Восстановление допускается как полное, так и выборочное.
  13. A В основе кажущегося простым модуля лежат средства экстренного восстановления, взятые у Bacula. Утилиты bls, bscan, bextract позволяют сисадмину восстановить систему даже в самых запущенных случаях.
  14. Kbackup. Инструмент для ОС Unix, используемый в резервном копировании Linux для создания и сжатия архивов.
  15. Amanda. ПО для Unix/Linux с собственными утилитами создания копий.

При сравнении систем резервного копирования Linux учитываются плюсы и минусы каждой. Определившись с типами резервного копирования, необходимо в тестовом режиме выяснить особенности:

  • время дублирования обычных объемов данных;
  • время дублирования больших объемов данных;
  • средняя нагрузка на канал;
  • время для «поднятия» всей системы;
  • время для «поднятия» выборочных файлов;
  • необходимость функции консистентности, в частности БД;
  • требуемый расход памяти и наличие oom-killer вызовов.

Чтобы сделать backup Linux Server, необходимо:

  • создать бэкап;
  • отформатировать и разметить диск, создав файловую систему;
  • восстановить бэкап для проверки на другом железе;
  • создать MBR;
  • протестировать результат и устранить неполадки.

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