Работа с виртуальными жесткими дисками VHD и VHDX средствами Windows

20.11.2020 0

Для установки операционной системы, хранения программ и других данных используются виртуальные жесткие диски – Virtual Hard Disc. Формат .vhd почти полностью имитирует реальный жесткий диск с ключевой структурой, разделами и прочими характеристиками.

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

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

Microsoft Virtual PC

Первая утилита – непосредственная разработка Microsoft для создания и работы с жесткими виртуальными дисками. Часто программу использовали для создания еще одной операционной системы в среде установленного Windows. В такой способ избегали повреждений «родной» ОС.

К сожалению, программа не поддерживается на новых версиях Windows. По крайней мере, на нашей «десятки» мы не смогли установить Virtual PC. С программой активно работали владельцы Windows XP. Как сообщает сайт, последняя поддерживаемая версия ОС – Windows 7.

Плагин для Total Commander

Работающим с Total Commander только лишь для просмотра и копирования ценных данных, хранящихся на диске ВМ, далеко ходить не нужно. Вопрос решается внутри этого файлового менеджера с помощью плагина к нему DiskInternals Reader. Первичная миссия этого плагина – реализация доступа в среде Windows к разделам и носителям с файловыми системами, используемыми в Linux. И неподдерживаемыми Windows. В довесок к основным возможностям плагин может монтировать для чтения диски ВМ форматов VMDK, VDI, VHD, VHDX и HDS.

Скачиваем плагин: https://wincmd.ru/plugring/diskinternals_reader.html

Распаковываем его внутри Total Commander. Отвечаем «Да» на предложение установки. Следуем шагам установочного мастера.

Запускаем Total Commander (принципиально) от имени администратора. Переключаемся на «Сеть / FS плагины». Заходим в «DiskInternals Reader».

Далее – «Mount Image».

Выбираем тип диска ВМ. Жмём «Next».

В обзоре указываем папку ВМ. Затем увидим все подключённые к машине диски. Можем снять галочки с ненужных, если их несколько. И кликаем «Mount».

Жмём Ctrl+R для обновления содержимого панелей Total Commander. И увидим примонтированные разделы виртуального диска.

Его содержимое копируем обычным для Total Commander образом — кнопкой внизу или клавишей F5. Процедура размонтирования дисков плагином не предусматривается. Да она как таковая и не нужна: достаточно просто перезапустить Total Commander.

VirtualBox

Одна из самых простых программ – VirtualBox от компании Oracle. Она рассчитана на создание и работу с виртуальными машинами (дисками) с возможностью установки дополнительных операционных систем.

Установочный файл скачивается с официального сайта (кликните по активной ссылке заголовка). Следуйте инструкциям установщика. Во время установки утилиты отключится сетевое подключение, о чем мы увидим предупреждение.

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

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

Несмотря на минималистичный интерфейс, возможности программы вполне соответствуют профессиональному инструменты для работы с VHD:

  • работа с несколькими дисками VHD;
  • импорт и экспорт настроек, конфигураций готовых виртуальных машин;
  • возможность удаленной работы с виртуальной машины (с другого компьютера), объединение нескольких машин в одну сеть;
  • создание скриншотов и видеозаписей;
  • поддержка не только Windows, но и других ОС;
  • программа абсолютно бесплатная.

На наш взгляд, это самая доступная во всех отношениях программа для работы с VHD-дисками. Она бесплатная, с простым интерфейсом, широкими настройками и широкими возможностями.

Конвертирование VDI в VHD средствами VirtualBox

VirtualBox не позволяет своими средствами монтировать диски ВМ для доступа к ним из среды хост-системы Windows. Но в числе её арсенала есть конвертер, который может преобразовывать диски родного формата VDI в VHD, VMDK и прочие типы. А, к примеру, VHD-файл в среде хостовой Windows 8.1 или 10 можно открыть штатными средствами ОС. Более того, при необходимости продолжить работу с ВМ, её можно пересоздать на базе уже конвертированного диска VHD. В окне VirtualBox переключаемся на раздел «Инструменты». Кликаем диск нужной ВМ, в контекст-меню выбираем «Копировать».

Далее указываем тип «VHD» (можно и «VMDK», если параллельно проводится работа с VMware). Затем жмём кнопку обзора в графе указания нового диска.

Здесь важный момент: графу «Имя файла» нужно подчистить — удалить из имени расширение «.vdi». И отследить ниже, чтобы как тип был задан «VHD». Жмём «Сохранить».

И теперь – «Копировать».

Конвертированный файл впоследствии открываем с помощью проводника.

Убираем его из хост-системы путём извлечения, как показано в п.1 статьи.

Однако если попутная цель реанимации ВМ не преследуется, если речь идёт только об изъятии ценной информации из файла VDI, проще прибегнуть к двум следующим вариантам решения вопроса.

Daemon Tools Ultra

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

По сравнению с версией Lite, утилита Ultra предлагает расширенные возможности работы с виртуальными дисками. В том числе с виртуальными машинами VHD. Она также дает возможность работы с несколькими виртуальными машинами, создавать резервные копии файлов и т.д.

Вот так выглядит главное окно программы.

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

Подключение VMDK средствами VMware Workstation

VMDK и VHD – форматы дисков ВМ, с которыми работает ПО VMware — можно подключить для отображения в проводнике хостовой Windows с использованием средств программы VMware Workstation. Её средства монтирования предусматривают и чтение, и запись данных. Открываем параметры нужной ВМ. На вкладке «Оборудование» слева кликаем жёсткий диск, справа жмём кнопку «Карта». Появится окошко мастера подключения диска. Здесь выбираем нужный раздел, ориентируясь на его размер. В нашем случае это системный раздел Windows. Снимаем галочку открытия в режиме только чтения. И жмём «Ок».

Важный нюанс: при открытии системных разделов гостевых ОС, установленных на виртуальные GPT-диски, в окне мастера необходимо выбирать не сам раздел с установленной ОС (раздел С в случае с гостевой Windows), а предшествующий ему MSR-раздел с размером обычно 16 или 128 Мб. Конечно, если MSR-раздел есть в структуре EFI-системы. Будет он там не в каждом случае.

Далее появится предупреждающее окошко, где говорится о нюансах доступа в режиме записи данных, связанных с работой снапшотов и клонов ВМ. Жмём «Да».

Примонтированный раздел откроется в проводнике хост-системы. Для отключения закрываем его открытого в проводнике (или файловом менеджере). И идём туда же, где мы его монтировали – в параметры ВМ. Но теперь жмём кнопку «Отключить».

7zip

Известный нам архиватор 7zip (ссылка на скачивание – в заголовке) не работает с виртуальными машинами. Но с его помощью можно открыть и посмотреть содержимое VHD-файла. Кликните на файл правой кнопкой мыши и выберите пункт «Открыть с помощью».

В списке программ кликните на 7zip. Возможно открытие и с помощью других архиваторов, например, WinRAR. Кстати, мы подробно рассказывали о том, как назначить программу по умолчанию.

Подключение VHD и VHDX средствами Windows

VHD и VHDX – форматы файлов виртуальных дисков, используемые встроенным в Windows 8.1 и 10 гипервизором Hyper-V – в среде этих версий хост-системы можно примонтировать с помощью её же штатных средств.

На файле диска вызываем контекст-меню, выбираем «Подключить».

И ищем в проводнике разделы нового устройства. Этот вариант предусматривает и чтение, и запись данных. Чтобы убрать диск ВМ из хост-системы, контекст-меню вызываем на любом из отображаемых его разделов и кликаем «Извлечь».

Что такое виртуальный диск, образ диска?

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

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

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

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

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

Упомянутые программы, как правило, также позволяют создавать на компьютере дополнительный виртуальный оптический привод (или несколько при необходимости), в который можно «виртуально вставлять» записанные на жесткий диск образы дисков. При этом компьютер будет воспринимать виртуальные привод и диск, находящиеся в нем, как реальные.

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

Образ диска (виртуальный диск) может сохраняться на жестком диске в виде файлов различных форматов (расширений): ISO, NRG, MDS, CCD, BIN/CUE, CDI, BWT, B5T и др. Каждый из форматов имеет свои плюсы и минусы. Самым универсальным и наиболее распространенным является формат ISO.

Существует много как «специализированных» программ для работы с образами дисков (например, Alcohol 120%, Daemon Tools Lite, UltraISO и др.), так и комплексов утилит (например, Nero), содержащих соответствующие инструменты.

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

Создание VHD-диска и загрузка с VHD

Быстродействие такой системы будет выше, чем при использовании виртуальных машин. Т.к. при использовании виртуализации на копьютере запускается одновременно две системы. А в случае с VHD — только одна и все ресурсы компьютера отданы именно ей.

В качестве основной системы можно использовать Windows 7 и выше. На виртуальный диск указанным способом можно устанавливать операционную систему от Windows Vista и выше.

Внимание!

Загрузку с VHD дисков в Windows 7 поддерживают только редакции Максимальная (Ultimate) и Корпоративная (Enterprise).

В Windows 10 загрузку с VHD поддерживает редакция Профессиональная (Professional) и выше.

Итак начнем.

Создание вирутального жесткого диска (VHD)

Создать VHD в Windows 7 можно двумя способами — с помощью утилиты Diskpart (используя CMD), а можно через визуальный интерфейс Менеджера дисков. Второй способ проще и нагляднее, поэтому используем его.

Открываем Менеджер дисков. Это можно сделать по следующему пути: Пуск -> Панель управления -> Администрирование -> Управление компьютером -> Управление дисками.

Далее щелкаем правой кнопкой мыши по разделу «Управление дисками» и в выпавшем меню выбираем «Создать виртуальный жесткий диск«.

Указываем расположение файла VHD.

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

Формат виртуального жесткого диска я предпочитаю выбирать «Динамическое расширение«, т.к. такой режим позволяет экономить место.

Нажимаем кнопку OK, создается файл VHD.

После этого в консоли «Управление дисками» появляется созданный виртуальный диск. Но он не инициализирован.

Инициализируется он через контекстное меню:

Далее необходимо создать том и отформатировать диск. Тоже через контекстное меню:

В итоге мы создали виртуальный жесткий диск, он находится на диске D: (D:MyDisk.vhd) и виден в операционной системе. Можно разворачивать на нем другую «операционку».

Развертывание операционной системы Windows на VHD

Для этого потребуется утилита imagex.exe из состава Windows AIK или Windows ADK. Я уже предусмотрительно взял эту утилиту из WADK и приложил к статье. Скачать imagex для x64 и x86 Вы можете внизу страницы.

Также понадобится файл install.wim из дистрибутива Windows. В дистрибутиве он находится в папке Sources. Предположим, что у нас в привод вставлен установочный DVD и путь к install.wim выглядит так — E:Sourcesinstall.wim.

Разворачивание ОС из файла install.wim на диск выполняется следующим образом.

Так как в одном WIM-файле может находится несколько образов ОС, то предварительно определим индекс нужного нам образа:

imagex /info E:sourcesinstall.wim

Допустим, что нужная Винда находится под индексом 1.

Разворачиваем из индекса 1 операционку на наш VHD:

imagex /apply /check E:sourcesinstall.wim 1 Z:

где Z: — буква, присвоенная нашему VHD.

После окончания разворачивания операционки, можно зайти на VHD-диск и убедится, что структура его каталогов соответсвует системному диску Windows.

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

Изменение информации в загрузчике Windows

Запускаем командную строку с правами администратора.

Создаем копию текущей операционной системы в загрузчике и даем ей описание «Windows 7 VHD»:

bcdedit /copy {current} /d «Windows 7 VHD»

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

Если вы забыли записать GUID, то узнать его вы можете запустив команду bcdedit без параметров.

Далее установите параметры device и osdevice для загрузочной записи VHD. В командной строке введите:

bcdedit /set {GUID} device vhd=[D:]MyDisk.vhd bcdedit /set {GUID} osdevice vhd=[D:]MyDisk.vhd

где GUID — идентификатор нашей новой записи в загрузчике.

Не забудьте изменить букву диска и путь к файлу VHD на свои.

Для некоторых систем на основе x86 требуется изменить параметр конфигурации загрузки для ядра, чтобы найти сведения об определенном оборудовании и успешно выполнить встроенную загрузку с VHD:

bcdedit /set {GUID} detecthal on

где GUID — идентификатор нашей новой записи в загрузчике.

Завершение

Теперь можно перегружать компьютер.

При старте компьютера на черном фоне будет в течение 5 секунд выдан запрос о выборе операционной системы. Выбирайте свою вновь созданную систему.

Начнется загрузка и установка ОС. После чего не забудьте установить драйверы на новой ОС и можете пользоваться новой системой, которая располагается на виртуальном диске VHD.

Отключение загрузки с VHD и возврат к первоначальному состоянию

Чтобы вернуть компьютер к первоначальному состоянию, необходимо выполнить следующие шаги (в любой последовательности):

  • Удалить запись из загрузчика.
    Для этого выполняем команду bcdedit без параметров. Она выведет нам все записи. Находим в списке нашу добавленную запись и ее GUID.

    Для ее удаления выполняем команду:

    bcdedit /delete {GUID}

  • Удалить виртуальный диск из консоли «Управление дисками«.
  • Удалить файл VHD.

Удачи!

P.S. Опишите в комментариях, для каких целей Вы используете технологию загрузки с виртуального диска VHD?