Резервное копирование Linux-серверов
Создание резервных копий – одна из неотъемлемых задач системного администратора. Рассмотрим, как осуществить процедуру с помощью встроенных утилит dd и tar на семействах ОС Linux.
Создаем бэкап
Утилита dd является одной из первых в своем направлении. У нее отсутствуют некоторые опции, которые доступны на современных аналогах, но она удобна и проста в использовании. К тому же, исходный файл бэкапа читается другими программами без проблем.
Запускаем утилиту с заданными параметрами:
dd if=xxx of=yyy bs=8M conv=sync,noerror
Синтаксис следующий. XXX – имя диска, с которого производится резервное копирование, а YYY – наименование файла бэкапа.
Операнд bs задает размер кэша жесткого диска. Установим его на 8 Мб, чтобы копирование происходило быстрее. Параметр conv указывает на то, что копирование файлов происходит побитно с пропуском ошибок чтения.
Команда tar в основном используется для создания архивов, но ее используют и для бэкапов:
tar -cvpzf name1.tar.gz --exclude=name2 --one-file-system folder1
- name1 – произвольное имя для новой резервной копии;
- exclude=name2 означает, что из архива исключаем все папки и файлы с таким именем;
- one file system сообщает архиватору о том, что используем только одну файловую систему;
- folder1 – имя директории, резервная копия которой создается командой tar.
Как восстановить
Чтобы выполнить восстановление из резервной копии, используем следующий синтаксис:
dd if=ZZZ of=QQQ bs=8M conv=sync,noerror
Расшифровка следующая. ZZZ – имя бэкапа с указанием пути до него. Например, /mnt/backup/21082019.img, QQQ – диск, на который восстанавливается копия.
Архиватор использует немного другой набор команд:
sudo tar -xvpzf XXX -C YYY --numeric-owner
- XXX – полное наименование архива;
- YYY – директория, в которой будет перемещена разархивированная информация.
Последний ключ (--numeric-owner) означает, что пользователи тоже будут восстановлены, но не по учетному имени, а по числовому значению.