. Приношу свои извинения пользователям систем Windows 7 Professional, Windows Vista и Windows XP — эта операция выполняется только при работе с версиями Enterprise/Ultimate.

Механизм загрузки системы с виртуального жесткого диска базируется на двух основных концепциях. Концепция первая: вместо того, чтобы загружать систему с тома C на физическом жестком диске (физический диск разбивается на тома, тома получают имена, скажем том C, и в этот том устанавливается операционная система, так что в томе C размещаются десятки тысяч файлов), пользователь должен прежде всего создать не физический жесткий диск, а виртуальный диск в разработанном компанией Microsoft формате VHD и сохранить его в виде файла с именем, например image.vhd. Затем этот файл нужно смонтировать, назначив ему буквенное обозначение (например, H), установить в нем копию Windows (о том, как это делается, я рассказывал в предыдущих статьях) — и в результате получится загрузочный диск Windows, но не простой, а аккуратно упакованный в один файл image.vhd.

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

Возникает вопрос, а зачем все это нужно? Дело в том, что, если образы системы хранятся в формате VHD, такую систему можно развертывать двумя способами. Способ первый: настольные системы развертываются у пользователей в формате виртуальных машин, которые выполняются на больших серверах Hyper-V. Второй способ состоит в том, что нужные образы настольных систем распределяются по физическим настольным системам, но вместо специализированных средств формирования образа, таких как Ghost, Clonezilla или ImageX, в данном случае используется Windows Explorer — файл VHD перемещается методом «отбуксировать и оставить».

Первая часть проблемы решается просто: нужно скопировать файл image.vhd на диск целевой системы. В рассматриваемом примере я буду исходить из того, что вы скопировали image.vhd в папку C:\images. Теперь осталось только известить существующую копию Windows о том, каким образом обеспечить загрузку новой альтернативной копии, «упакованной» в формат VHD.

Чтобы решить эту задачу, рекомендую прочитать две статьи: «Основы Bcdedit», опубликованную в Windows IT Pro/RE № 5 за 2009 год, и «Начальная загрузка с Bcdedit» в № 6 за 2009 год, в которых речь идет об инструментальном средстве командной строки, предназначенном для управления загрузкой системы Windows.

Как описано в упомянутых статьях, вам предстоит с помощью программы Bcdedit создать отдельную «запись об операционной системе», и только после этого вы сможете настроить диспетчер загрузки Windows Boot Manager так, чтобы во время загрузки пользователю предлагался вариант загрузки с файла image.vhd (а также традиционный вариант загрузки с накопителя C). Новой записи для операционной системы можно дать название Boot from VHD:

bcdedit/copy {current}/d "Boot from VHD"

В результате вы получите новый глобальный уникальный идентификатор записи для операционной системы:

The entry was successfully copied to {61bed0dc-ddd7-11df-
   9094-70f3954a3108}.

Теперь требуется указать два загрузочных параметра в {61bed0dc-ddd7-11df-9094-70f3954a3108} — «device» и «osdevice» — и задать им такие значения: «vhd= [driveletter:]\vhdfilespec». После этого при загрузке из файла C:\images\image.vhd нужно будет ввести следующие инструкции:

bcdedit/set {61bed0dc-ddd7-11df-9094-70f3954a3108} device
   vhd=[c:]\images\images.vhd
bcdedit/set {61bed0dc-ddd7-11df-9094-70f3954a3108} osdevice
   vhd=[c:]\images\images.

Приведенные команды не отличаются особым изяществом, но наш пример показывает, как они формируются. Сначала следует bcdedit/set, затем сгенерированный глобальный уникальный идентификатор, потом device или osdevice (всего требуется две команды, по одной для каждого устройства), и в заключение — раздел vhd=-.

Выполните команды, перезагрузите систему, и вы увидите окно диспетчера загрузки, а в нем два варианта загрузки: Windows 7 (этой системой вы пользовались до сих пор) и Boot from VHD. Выберите второй вариант, и система загрузится с виртуального жесткого диска.

Вы все еще не разобрались с тем, как пользоваться такой возможностью? Если вам требуется инструмент, позволяющий привести в прежнее состояние физическую систему — скажем, школьный компьютер — так, как это делают коммерческие продукты, например Deep-Freeze или, к сожалению, уже снятое с производства Microsoft SteadyState, позвольте порекомендовать вам отвлечься от работы на какое-то время и прочесть мою статью «Снимки физических и виртуальных систем с помощью Diskpart», опубликованную в № 9 за 2010 год. В ней разъясняется, как создаются пары VHD-файлов «потомок/родитель», которые обеспечивают столь популярную в виртуальных машинах возможность получения моментальных снимков, и предполагаю, что эта возможность была бы весьма полезна в физических системах.

Марк Минаси (www.minasi.com/gethelp) — старший редактор журнала Windows IT Pro, сертифицированный системный инженер по продуктам Microsoft