Как восстановить данные с виртуальных дисков QCOW2 и снимков KVM (QEMU) в RHEL 7.9

В этой статье мы расскажем, как восстановить виртуальные диски и снимки KVM в Red Hat Enterprise Linux 7.9, определить причину потери данных и восстановить доступ к информации с помощью соответствующих инструментов.

Как восстановить данные с виртуальных дисков QCOW2 и снимков KVM (QEMU) в RHEL 7.9

Виртуализация на основе KVM (Kernel-based Virtual Machine) и QEMU широко используется в Red Hat Enterprise Linux 7.9 для создания и управления виртуальными машинами. Их операционные системы, приложения и пользовательские файлы хранятся на виртуальных дисках, например в форматах QCOW2 или RAW. Снимки можно использовать для сохранения предыдущего состояния виртуальных машин, что позволяет откатиться к определенной точке во времени. Однако случайное удаление файлов, повреждение образа диска, сбой физического накопителя или нарушение цепочки снимков могут привести к потере доступа к критически важным данным.

Перейти к просмотру
Как восстановить виртуальные машины KVM (QEMU) и снапшоты с RHEL 7.9

Как восстановить виртуальные машины KVM (QEMU) и снапшоты с RHEL 7.9

Архитектура KVM и LVM в RHEL 7.9

Рассмотрим архитектуру нашей серверной системы подробнее.

Саму операционную систему Red Hat Enterprise Linux 7.9 установлено на отдельный системный диск с файловой системой XFS. Однако хранилище для среды виртуализации KVM использует сложную многослойную дисковую подсистему.

Архитектура KVM и LVM в RHEL 7.9

Система построена на массивах дисков RAID 5 и RAID 0. Поверх них развернуты логические тома LVM. Для обеспечения безопасности данных эти тома дополнительно зашифрованы с использованием стандарта LUKS, и только внутри этого криптографического контейнера создана файловая система ext4, где непосредственно хранятся файлы виртуальных машин.

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

Основная проблема заключается в том, что такая сложная архитектура значительно усложняет процесс восстановления данных. Вся эта структура (RAID, LVM, LUKS и ext4) тесно взаимосвязана. Сбой на любом из этих уровней немедленно нарушает всю цепочку и полностью блокирует доступ к виртуальным машинам.

Перейдем непосредственно к виртуальным машинам. Они используют виртуальные диски в популярном формате qcow2. Этот формат поддерживает снимки, то есть фиксацию состояния системы в определенный момент времени. Хранение всех снимков и текущих изменений в одном файле виртуального диска крайне удобно для администрирования и управления ресурсами.

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

К счастью, это не означает безвозвратной потери информации, поскольку с помощью Hetman RAID Recovery можно проанализировать поврежденную структуру и успешно восстановить как сами виртуальные диски, так и данные, хранящиеся внутри них.

Для восстановления данных с повреждённых RAID-массивов, NAS-устройств и других многодисковых систем хранения.
Компонент Назначение и особенности
KVM (Kernel-based Virtual Machine) Модуль ядра Linux, обеспечивающий аппаратную виртуализацию и позволяющий запускать виртуальные машины в RHEL 7.9.
QEMU Эмулирует виртуальное оборудование и обеспечивает работу виртуальных машин, включая доступ к их виртуальным дискам.
libvirt Набор инструментов управления виртуализацией, используемых для создания, запуска, остановки и настройки виртуальных машин с помощью virsh и других средств.
Виртуальная машина (VM) Изолированная среда, в которой работает гостевая операционная система со своими приложениями, настройками и файлами.
Виртуальный диск QCOW2 Формат образа диска QEMU, поддерживающий динамическое выделение пространства, метаданные и внутренние снимки. Также может использоваться как часть цепочки внешних снимков.
Виртуальный диск RAW Образ диска без дополнительной контейнерной структуры QCOW2. Может храниться в файле или на блочном устройстве LVM.
Снимок (Snapshot) Сохраненное состояние диска или виртуальной машины. Снимки могут быть внутренними, когда они хранятся в одном файле QCOW2, или внешними, когда изменения записываются в отдельный файл.
Цепочка внешних снимков Последовательность, состоящая из базового образа и дочерних дисков, в которых сохраняются изменения. Для доступа к текущему состоянию данных необходимо сохранить корректные связи между файлами.
LVM (Logical Volume Manager) Система управления логическими томами в Linux, позволяющая объединять физические устройства в группы томов и создавать логические тома для виртуальных дисков.
PV (Physical Volume) Физическое устройство или раздел, подготовленный для использования в LVM. Представляет собой базовый уровень структуры LVM.
VG (Volume Group) Группа томов, объединяющая один или несколько PV и предоставляющая пространство для создания логических томов.
LV (Logical Volume) Логический том, который может использоваться как блочное устройство для хранения виртуального диска RAW или файловой системы с образами QCOW2.
Файловая система хоста Файловая система RHEL, например XFS или ext4, в которой могут храниться файлы виртуальных дисков и конфигурации виртуальных машин.
XML-конфигурация libvirt Содержит параметры виртуальной машины, включая путь к диску, тип контроллера и другие настройки. Помогает определить, какой образ использовался виртуальной машиной.
Метаданные LVM Содержат сведения о физических томах, группах томов и логических томах. Повреждение этих метаданных может привести к недоступности логических томов и хранящихся на них данных.

Подключение дисков к компьютеру

Чтобы начать процесс восстановления, необходимо физически извлечь диски из проблемного сервера и подключить их к компьютеру. Наилучший и самый быстрый вариант — прямое подключение к материнской плате компьютера через порты SATA или SAS.

Можно также использовать внешние USB-док-станции или адаптеры, но следует учитывать, что это может снизить скорость сканирования.

Важное правило при сборке массивов: для успешного восстановления данных из массива RAID 5 достаточно подключить все диски, кроме одного неисправного. Однако для массива RAID 0 необходимо обязательно подключить абсолютно все накопители, входившие в массив; в противном случае восстановление будет невозможно.

Если свободных портов недостаточно для подключения всех накопителей или если диски имеют признаки аппаратного сбоя, лучшим решением будет создание посекторных образов. Эта встроенная функция Hetman RAID Recovery позволяет сохранить точную копию каждого диска в виде обычного файла. Работа с образами является стандартной мерой безопасности, поскольку сканирование выполняется без физической нагрузки на исходные диски сервера.

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

Hetman RAID Recovery: создание посекторного образа диска

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

Hetman RAID Recovery: откройте главное меню и выберите Подключить диск

Выберите тип Образы RAW-дисков и откройте сохраненные файлы.

Hetman RAID Recovery: Подключить диск - Образы RAW-дисков

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

Hetman RAID Recovery: подключенные диски

Как восстановить виртуальные машины KVM (QEMU) и снимки в RHEL 7.9

МЕТОД 1. Восстановление файлов виртуальной машины

Перейдем к практике и рассмотрим восстановление доступа к файлу виртуального диска qcow2.

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

Hetman RAID Recovery: автоматически определенные разделы RAID

Однако алгоритмы Hetman RAID Recovery позволяют легко обойти эту проблему. В главном окне программы мы видим уже автоматически собранный массив RAID 5, но для доступа к данным сначала необходимо разблокировать его логический том, введя пароль LUKS.

Hetman RAID Recovery: разблокировка массива путем ввода пароля LUKS

Только после успешного снятия криптографической защиты выбираем этот том и запускаем алгоритм Быстрое сканирование, который сразу проанализирует структуру нашей файловой системы, в данном случае ext4.

Hetman RAID Recovery: быстрое сканирование разблокированного массива

Перейдите в папку, где хранилась виртуальная машина. Программа успешно восстановила дерево каталогов и нашла целый файл qcow2.

Hetman RAID Recovery: целый файл qcow2

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

Hetman RAID Recovery: выберите найденный образ и нажмите Восстановить

МЕТОД 2. Восстановление файлов из гостевых ОС

Теперь рассмотрим другой распространенный сценарий: потеря данных произошла непосредственно внутри самой виртуальной машины. В нашем примере гостевой операционной системой является Windows 10.

Обычно доступ к таким файлам требует запуска гипервизора и полной загрузки виртуальной машины, что не всегда возможно или безопасно после системных сбоев. Однако Hetman RAID Recovery позволяет напрямую работать с форматом qcow2. Вы можете открыть виртуальный диск непосредственно в интерфейсе программы без использования гипервизора.

Hetman RAID Recovery: открыть меню Подключить диск

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

Hetman RAID Recovery

и нажмите Подключить папку.

Hetman RAID Recovery

После этого виртуальный диск сразу появится в общем списке устройств. Поскольку наша гостевая система — Windows 10, мы сразу видим ее раздел с файловой системой NTFS.

Hetman RAID Recovery

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

После проверки правильности найденной информации выберите нужные файлы, нажмите кнопку Восстановить и сохраните их на локальный диск компьютера.

Hetman RAID Recovery: выберите нужные файлы и нажмите Восстановить

МЕТОД 3. Восстановление данных с помощью снимков

Еще одной мощной функцией Hetman RAID Recovery является работа со снимками, то есть с фиксациями состояния системы.

Как мы уже упоминали в начале видео, формат qcow2 хранит все снимки в одном файле. При подключении такого виртуального диска программа автоматически находит все содержащиеся в нем снимки и отображает их как отдельные подключенные диски в общем списке.

Hetman RAID Recovery: программа автоматически находит все доступные снимки

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

Hetman RAID Recovery: все доступные снимки подключены в программе

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

Hetman RAID Recovery

Заключение

Восстановление виртуальных дисков и снимков KVM в Red Hat Enterprise Linux 7.9 требует понимания архитектуры виртуализации, структуры хранения и принципов размещения данных. В зависимости от конфигурации виртуальной машины ее диск может быть представлен файлом QCOW2 или RAW, расположенным на файловой системе, либо логическим томом LVM. Это определяет выбор инструментов и последовательность действий при восстановлении.

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

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

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

Dmytriy Zhura

Автор: , Технический писатель

Дмитрий Жура – автор и один из IT-инженеров компании Hetman Software. Имеет почти 10 летний опыт работы в IT-сфере: администрирование и настройка серверов, установка операционных систем и различного программного обеспечения, настройка сети, информационная безопасность, внедрения и консультация по использованию специализированного ПО. Является экспертом в области восстановления данных, файловых систем, устройств хранения данных и RAID массивов.

Oleg Afonin

Редактор: , Технический писатель

Oleg Afonin is an expert in mobile forensics, data recovery and computer systems. He often attends large data security conferences, and writes several blogs for such resources as xaker.ru, Elcomsoft and Habr. In addition to his online activities, Oleg’s articles are also published in professional magazines. Also, Oleg Afonin is the co-author of a well-known book, Mobile Forensics - Advanced Investigative Strategies.

Рекомендуем для вас