Как восстановить ZVOL и контейнеры LXC из массива RAIDZ в Proxmox VE

В этой статье мы рассмотрим процесс восстановления виртуальных машин, хранящихся как блочные устройства ZVOL, и контейнеров LXC из программного массива RAIDZ на основе файловой системы ZFS, созданного в Proxmox Virtual Environment версии 9.1.1.

Как восстановить ZVOL и контейнеры LXC из массива RAIDZ в Proxmox VE

Мы проанализируем наиболее распространенные сценарии потери данных. К ним относятся случайное удаление важных файлов внутри гостевой системы или ошибочное удаление самой виртуальной машины либо набора данных контейнера. Мы также рассмотрим восстановление данных при аппаратных проблемах, например при повреждении массива из-за отказа диска или общей неисправности сервера. Кроме того, мы затронем программные сбои, например аварийное завершение работы гипервизора Proxmox VE, вызванное неудачными обновлениями, критическими ошибками или повреждением системного раздела.

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

Наше специализированное программное обеспечение позволяет без проблем восстанавливать данные из любых гостевых файловых систем для Windows, Linux и macOS.

Перейти к просмотру
Как восстановить VM и LXC-контейнеры из ZFS RAIDZ в Proxmox

Как восстановить VM и LXC-контейнеры из ZFS RAIDZ в Proxmox

Как работает ZFS в Proxmox

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

  • Для полноценных виртуальных машин Proxmox не использует привычные файлы образов qcow2 или RAW. Вместо этого система создает для них специальные выделенные блочные устройства, называемые ZVOL. Программное обеспечение для восстановления данных видит их не как отдельные файлы в папке, а как полноценные физические диски. Такой подход позволяет гипервизору эффективнее работать со снимками и распределением ресурсов сервера.
  • Для легковесных контейнеров LXC используется несколько иной подход. Вместо создания виртуальных дисков Proxmox размещает каждый контейнер в собственном изолированном наборе данных ZFS, называемом subvolume. При сканировании массива такие наборы данных будут отображаться как обычные папки со стандартной иерархией каталогов системы Linux, из которых можно напрямую извлечь нужные файлы.
Характеристика Виртуальные машины (ZVOL) Контейнеры LXC (subvolume)
Способ хранения Выделенные блочные устройства ZVOL Отдельные наборы данных ZFS
Организация данных Данные хранятся в виде блочного устройства, работающего как независимый диск Данные организованы в виде файловой системы с иерархией каталогов Linux
Формат виртуального диска Стандартные файлы образов qcow2 или RAW не используются — вместо них создаются ZVOL Отдельный файл виртуального диска не требуется
Как отображаются при восстановлении Как одно блочное устройство, аналогичное физическому диску Как папки с файлами и вложенными папками
Доступ к файлам Содержимое блочного устройства необходимо проанализировать, чтобы определить структуру файловой системы Можно просматривать структуру каталогов и напрямую извлекать нужные файлы
Особенности использования ZFS Эффективное управление блочным хранилищем и поддержка снимков Изолированное хранение файловой системы каждого контейнера
Основной объект восстановления Виртуальные диски и данные внутри ZVOL Файлы, папки и данные контейнеров LXC

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

Перед началом программного восстановления необходимо правильно подключить диски сервера к рабочему компьютеру. Наиболее надежный вариант — прямое подключение через разъемы SATA на материнской плате.

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

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

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

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

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

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

Для восстановления данных с повреждённых RAID-массивов, NAS-устройств и других многодисковых систем хранения.

Чтобы создать образ, запустите Hetman RAID Recovery, выберите нужный диск в списке и нажмите Сохранить диск.

Hetman RAID Recovery: Создание образа диска

В открывшемся окне укажите место сохранения файла.

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

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

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

В списке типов выберите Образы Raw-дисков и загрузите ваш файл.

Hetman RAID Recovery: Монтирование RAW-образа диска

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

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

Hetman RAID Recovery: Смонтированный образ диска

Как восстановить данные из RAIDZ в Proxmox VE

СПОСОБ 1. Автоматическое восстановление данных

После физического подключения дисков к компьютеру запустите Hetman RAID Recovery.

Для восстановления данных с повреждённых RAID-массивов, NAS-устройств и других многодисковых систем хранения.

Утилита автоматически начнет сканирование всех подключенных устройств и прочитает служебные метаданные файловой системы ZFS. На основе этих данных программа самостоятельно восстановит поврежденный массив RAIDZ. Этот процесс полностью автоматизирован и позволяет получить доступ к данным даже после фатального сбоя гипервизора Proxmox или полного отказа аппаратной части сервера.

Hetman RAID Recovery: Поврежденный массив RAIDZ

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

Hetman RAID Recovery: Быстрый анализ массива RAIDZ

После завершения сканирования восстановленная файловая система будет отображена в главном окне. Здесь важно понимать, как программа обозначает различные типы виртуальных сред Proxmox. Блочные устройства полноценных виртуальных машин будут отображаться с идентификатором vm и словом disk в имени, а также будут помечены как тома ZVOL. Изолированные наборы данных ваших контейнеров LXC программа покажет как обычные папки со словом subvol.

Hetman RAID Recovery: Изолированные наборы данных LXC

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

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

Hetman RAID Recovery: Восстановление данных набора данных

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

Hetman RAID Recovery: Сохранение данных набора данных

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

СПОСОБ 2. Работа с виртуальными машинами (ZVOL)

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

Hetman RAID Recovery: Работа с виртуальными машинами ZVOL

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

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

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

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

Hetman RAID Recovery: Монтирование сохраненного файла ZVOL

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

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

Hetman RAID Recovery: Сканирование смонтированного файла ZVOL

СПОСОБ 3. Восстановление после удаления виртуальной машины

Удаление виртуальной машины или контейнера в Proxmox обычно происходит по ошибке администратора. В файловой системе ZFS это приводит к мгновенному исчезновению блочного устройства ZVOL или набора данных subvolume. Поскольку в системе отсутствует корзина, освободившееся место сразу становится доступным для новых записей. Однако ваши данные по-прежнему физически остаются на дисках.

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

Для восстановления утраченных объектов снова используем Hetman RAID Recovery.

Для восстановления данных с повреждённых RAID-массивов, NAS-устройств и других многодисковых систем хранения.

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

Hetman RAID Recovery: Полное сканирование восстановленного пула RAIDZ

После завершения сканирования найденные объекты будут отображены в окне программы.

Hetman RAID Recovery: Найденные объекты после полного сканирования

Чтобы быстро найти нужный ZVOL или удаленный набор данных, удобно использовать функцию поиска. Если вы восстанавливаете LXC-контейнер, ищите папки с именем subvol и проверяйте их содержимое.

Hetman RAID Recovery: Поиск папки subvol

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

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

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

Hetman RAID Recovery: Восстановление найденных файлов

Заключение

Восстановление данных из массива RAIDZ в Proxmox VE имеет свои особенности, поскольку ZFS использует собственную структуру хранения и управления данными. Виртуальные машины в такой среде могут использовать ZVOL, который представлен как блочное устройство, тогда как контейнеры LXC хранятся как отдельные ZFS dataset, содержащие файловую структуру контейнера.

При повреждении или потере доступа к RAIDZ важно не пересоздавать массив, не форматировать диски и не выполнять операции, которые могут перезаписать служебные данные ZFS. Для успешного восстановления необходимо сохранить исходную структуру массива и, по возможности, работать с копиями дисков.

Специализированное программное обеспечение для восстановления данных позволяет анализировать структуру ZFS, находить виртуальные диски ZVOL, файловые системы и данные контейнеров LXC даже в ситуациях, когда Proxmox VE или сам массив RAIDZ больше не обеспечивает нормальный доступ к информации.

Таким образом, правильный подход к восстановлению позволяет получить доступ как к данным виртуальных машин, хранящимся в ZVOL, так и к файлам и каталогам контейнеров LXC, сохраняя их исходную структуру. Это особенно важно после отказа диска, повреждения пула ZFS, случайного удаления данных или критических ошибок Proxmox VE.

Dmytriy Zhura

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

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

Andrey Mareev

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

В далеком 2005 году, я получил диплом по специальности «Прикладная математика» в Восточноукраинском национальном университете. А уже в 2006 году, я создал свой первый проект по восстановлению данных. С 2012 года, начал работать в компании «Hetman Software», отвечая за раскрутку сайта, продвижение программного обеспечения компании, и как специалист по работе с клиентами.

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