Резервное копирование продолжает оставаться самым эффективным и надёжным средством обеспечения сохранности данных. Зачастую именно наличием такого инструментария определяется выбор платформы для построения корпоративной ИТ-инфраструктуры.

К сожалению, даже сегодня есть пользователи, которые уверены, что в Linux не существует удобных приложений для резервного копирования. С этим категорически не согласен популяризатор СПО Мэтт Хартли. На сайте Datamation он опубликовал статью, в которой рекомендует читателям некоторые лучшие программы этого типа.

Клонирование дисков и разделов

Если пользователь не испытывает дрожи перед командной строкой, то программа dd — именно то, что ему нужно для создания точной копии какого-либо раздела. Правда, применять её следует максимально осторожно. Например, если случайно перепутать названия разделов, то процесс пойдёт в обратном направлении и вместо сохранения данных получится их полная потеря.

Однако это свойство компенсируется другими положительными качествами решения. В частности, для программы совершенно не важно, какого типа данные находятся на разделе — она просто копирует их, не «вникая в подробности».

Например, для клонирования всего жёсткого диска следует воспользоваться командой dd if=/dev/sda of=/dev/sdb bs=64K conv=noerror,sync.

А для создания копии раздела команда будет немного другой: dd if=/dev/sda1 of=/dev/sdb1 bs=64K conv=noerror,sync.

Если же пользователь предпочитает приложения с графическим интерфейсом, то ему подойдёт программа Clonezilla, похожая на True Image или Norton Ghost. Она позволит сохранить копию на локальный диск, USB-накопитель, а также ресурсы NFS и Samba.

Резервное копирование на основе rsync

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

Использование rsync оправдано, если пользователю требуется сохранить свои данные вместе с их разрешениями, а также при перемещении больших файлов по сети. В этом случае применение этой команды очень простое: rsync -a /folder/to/backup /location/of/backup.

На практике чаще применяются более сложные варианты. Например, для резервного копирования системных каталогов с сохранением прав доступа и связанных символических ссылок используется следующая команда: rsync -aAXv —exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} / /path/to/backup/folder.

Разумеется, rsync не является полноценной заменой клонирования раздела. Поэтому на практике следует совмещать оба метода для повышения надёжности.

Для тех, кто предпочитает приложения с графическим интерфейсом, Мэтт Хартли рекомендует программу Back in Time. Она чрезвычайно проста в применении и обеспечивает команде rsync удобную оболочку. Например, включает в себя встроенный инструмент для автоматизации резервного копирования.

Наконец, если перед пользователем стоит задача создать резервную копию системных объектов, то можно применять для этой цели графическую утилиту Time Shift, позволяющую выбрать временной период для восстановления. Правда, у этого решения есть один серьёзный недостаток — он хранит копии на корневом диске, поэтому при его отказе все они будут утрачены.

При этом Мэтт Хартли подчёркивает, что он исключил из рассмотрения сложные инструменты корпоративного уровня (например, AMANDA) и недостаточно гибкие графические приложения (например, Deja Dup). Предлагаемые им программы предназначены для использования в небольших предприятиях, у которых нет возможности оплачивать техническую поддержку.