Гид по технологиям

Как клонировать и создать резервную копию раздела на Linux

5 min read Резервное копирование Обновлено 07 Nov 2025
Клонирование и резервное копирование раздела в Linux
Клонирование и резервное копирование раздела в Linux

Схема клонирования раздела диска на Linux

Оглавление

  • Как и зачем клонировать разделы
  • Команды и примеры: dd и cat
  • Проверка целостности и монтирование
  • Когда dd не подходит и альтернативы
  • Чек-листы и критерии приёмки
  • Справочник команд и краткая шпаргалка

Как и зачем клонировать разделы

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

Ключевые моменты:

  • Выполняйте операцию из живой среды (Live CD/USB), чтобы раздел-источник был отмонтирован.
  • Перед началом определите устройства командой lsblk или fdisk -l.
  • Всегда дважды проверяйте параметры if и of — их перепутывание удалит данные источника.

Команды и примеры: dd

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

Пример клонирования раздела /dev/sda1 в /dev/sdb1:

# dd if=/dev/sda1 of=/dev/sdb1 bs=64K conv=noerror,sync

Клонирование целого диска (включая MBR/таблицу разделов):

# dd if=/dev/sdX of=/dev/sdY bs=64K conv=noerror,sync

Разъяснения опций:

  • if — входной файл (источник), of — выходной файл (назначение).
  • noerror — продолжать при ошибках чтения вместо остановки.
  • sync — дополнять блок нулями при ошибках, чтобы сохранить выравнивание.
  • bs — размер блока; 64K или 128K обычно быстрее, но при ошибках чтения увеличивает размер «повреждённого» участка на выходе.

Важно: при больших bs одиночная 512‑байтная ошибка чтения «портит» весь выходной блок, поэтому для изношенных носителей лучше использовать меньший bs и/или специальные утилиты (ddrescue).

Примеры безопасного использования dd

  1. Проверить устройства:
# lsblk -f
# fdisk -l
  1. Отмонтировать разделы на целевых и исходных дисках:
# umount /dev/sda1
# umount /dev/sdb1
  1. Сделать копию и контролировать прогресс (pv или статус=progress):
# dd if=/dev/sda1 of=/dev/sdb1 bs=64K conv=noerror,sync status=progress

Если нет status=progress в вашей версии dd, используйте pv:

# dd if=/dev/sda1 bs=64K conv=noerror,sync | pv | dd of=/dev/sdb1 bs=64K

Команда cat для клонирования

cat может копировать блочные устройства, но требует перенаправления вывода. Простой пример:

# cat /dev/sda1 > /dev/sdb1

Этот способ похож на dd с маленьким bs и не предоставляет удобных опций при ошибках чтения. Для контроля прогресса используйте pv:

# pv /dev/sda1 > /dev/sdb1

Примечание: cat не заполняет блоками при ошибках чтения и не имеет опций conv=noerror,sync, поэтому при повреждённых носителях предпочтительнее ddrescue.

Проверка целостности и монтирование

После завершения клонирования выполните следующие проверки:

  1. Смонтируйте раздел:
# mount /dev/sdb1 /mnt
# ls /mnt
  1. Сравните контрольные суммы каталога (рекомендуется для файловых разделов):
# rsync -av --dry-run /path/to/original/ /mnt/  # быстрый визуальный контроль
# find /original -type f -exec sha256sum {} + | sort > /tmp/orig.sum
# find /mnt -type f -exec sha256sum {} + | sort > /tmp/copy.sum
# diff /tmp/orig.sum /tmp/copy.sum
  1. Для полной битовой проверки можно сравнить устройства командой cmp (будьте осторожны при больших дисках):
# cmp -l /dev/sda1 /dev/sdb1 | head

Если разделы совпадают, можно размонтировать /mnt и вернуть диск в рабочее состояние.

Когда dd не подходит и альтернативы

dd — не всегда лучший выбор. Примеры ситуаций и альтернатив:

  • Носитель имеет физические ошибки: используйте ddrescue — она восстанавливает данные максимально, ведёт лог ошибок и повторяет попытки.
  • Нужна копия только файлов (а не всей файловой системы): используйте rsync или tar — они переснимают только файлы и позволяют изменять права/владельцев.
  • Нужен GUI и удобное восстановление: CloneZilla или Acronis True Image.
  • Хотите клонировать только используемые блоки NTFS/EXT4: Partclone.

Краткая таблица-ориентир:

  • Полная битовая копия: dd, ddrescue
  • Копия файлов и прав: rsync, tar
  • Простая миграция/GUI: CloneZilla, Acronis
  • Повреждённые диски: ddrescue

Чек-листы по ролям

Администратор (перед операцией):

  • Определить источник и цель через lsblk/fdisk.
  • Сделать снимок загрузочного сектора (если важно): dd if=/dev/sda of=mbr.img bs=512 count=1
  • Убедиться, что разделы отмонтированы.
  • Подготовить место для логов и контрольных сумм.

Пользователь с ограниченными правами:

  • Спросить администратора о правильных устройствах.
  • Использовать GUI-инструмент, если доступен.

Оператор резервного копирования:

  • Планировать окно обслуживания.
  • Протестировать восстановление на стенде.
  • Хранить несколько копий и проверять контрольные суммы.

Критерии приёмки

  1. Раздел монтируется на целевом носителе без ошибок.
  2. Содержимое директорий совпадает (проверка rsync –dry-run или контрольные суммы).
  3. Если клонировался загрузочный диск — система загружается с целевого носителя в тестовой среде.
  4. Логи операции (если использовался ddrescue) не содержат непреодолимых ошибок.

Справочник команд и шпаргалка

  • Просмотр устройств: lsblk -f, fdisk -l, blkid
  • Отмонтировать: umount /dev/sdXN
  • Клонирование dd: dd if=/dev/sdX of=/dev/sdY bs=64K conv=noerror,sync status=progress
  • Клонирование через cat: cat /dev/sdX > /dev/sdY
  • Использовать pv для прогресса: pv /dev/sdX > /dev/sdY
  • Проверка отличий: diff, cmp, rsync –dry-run
  • Клонирование с восстановлением: ddrescue /dev/sdX /dev/sdY ddrescue.log

Быстрые советы по безопасности

  • Никогда не работайте с разделами, которые находятся в состоянии монтирования с записью.
  • Не используйте символические имена типа /dev/sda без понимания конфигурации — они могут поменяться при подключении USB.
  • Перед массовыми операциями протестируйте процедуру на ненастоящем диске или в виртуальной машине.

Простая методология выбора инструмента

  • Нужна простая и быстрая битовая копия без ошибок → dd (если носитель здоров).
  • Есть физические ошибки на диске → ddrescue.
  • Нужна только файловая копия с фильтрацией → rsync или tar.
  • Нужен графический интерфейс и образ для развёртывания → CloneZilla или Acronis.

Decision tree

flowchart TD
  A[Нужно клонировать раздел?] --> B{Носитель цел?}
  B -- Да --> C{Нужна битовая копия?}
  B -- Нет --> D[Использовать ddrescue]
  C -- Да --> E[dd или CloneZilla]
  C -- Нет --> F[rsync / tar]
  E --> G[Проверить контрольные суммы]
  F --> G
  D --> G

Тестовые сценарии и приёмка

  • Тест 1: Клонирование маленького раздела (например, 1 ГБ) и сравнение sha256sum всех файлов.
  • Тест 2: Клонирование загрузочного диска в виртуальной машине и проверка загрузки.
  • Тест 3: Клонирование при имитации ошибки чтения (используя специально подготовленный образ) и оценка поведения ddrescue.

Критерии успешного теста: данные доступны, загрузка проходит (если применимо), логи не содержат критичных непреодолимых ошибок.

Альтернативные утилиты и заметки

  • CloneZilla — удобен для массового развёртывания образов, работает с Partclone.
  • Acronis True Image — коммерческий продукт с GUI и встроенным планировщиком.
  • Partclone — копирует только используемые блоки файловой системы.
  • ddrescue — лучший выбор для восстановления с повреждённых дисков.

Сводка

Клонирование разделов в Linux — мощный инструмент для миграции и восстановления. dd подходит для точной битовой копии, но требует осторожности. Для повреждённых носителей используйте ddrescue, для копии файлов — rsync. Всегда проверяйте устройства, делайте тестовые прогоня и сравнивайте контрольные суммы.

Важно

  • Никогда не перепутайте if и of.
  • Делайте резервные копии перед операциями, затрагивающими данные.

Если у вас есть конкретная конфигурация дисков или непонятные ошибки, опишите оборудование и выводы lsblk/fdisk — я помогу составить последовательность действий.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Herodotus: механизм и защита Android‑трояна
Кибербезопасность

Herodotus: механизм и защита Android‑трояна

Включить новое меню «Пуск» в Windows 11
Windows руководство

Включить новое меню «Пуск» в Windows 11

Панель полей сводной таблицы в Excel — руководство
Excel

Панель полей сводной таблицы в Excel — руководство

Включить новое меню «Пуск» в Windows 11
Windows 11

Включить новое меню «Пуск» в Windows 11

Дубликаты Диспетчера задач в Windows 11 — как исправить
Windows

Дубликаты Диспетчера задач в Windows 11 — как исправить

История просмотров Reels в Instagram — как найти
Instagram

История просмотров Reels в Instagram — как найти