В прошлый раз мы создали VHD-образ с Window 7 для Virtual PC. Понятное дело, что в виртуальной среде, конечно, есть свои преимущества, но тем не менее, хотелось бы, чтобы все работало пошустрее…
В случае с Window 7, также хотелось бы увидеть ее во всей красе, как минимум с запущенным aero-интерфейсом.
Далее речь пойдет о том, как загружаться с полученного VHD-образа наравне с установленной базовой системой. То есть для работы с системой не понадобится отдельный раздел и не нужно будет сносить существующую систему, Win 7 будет по прежнему храниться внутри VHD-файла, но в то же время она будет запущена в реальном окружении.
Примечание: этот способ, по умолчанию, работает в Windows 7 и Windows Server 2008 R2, я буду рассказывать, как его заставить работать под Vista (см. пункт 1).
0. Если у вас виртуальный образ (VHD-файл) создавался как образ с динамическим размером, обедитесь, что у вас в системе есть свободное место в размере, максимальном для этого образа.
1. Прежде всего, нам понадобятся два файла: bootmgr (новый менеджер загрузки, умеющий загружать из VHD) и bcdedit.exe (новая версия программы для редактирования загрузочных записей).
Первый можно взять с установочного диска, второй можно взять из установленной системы Windows 7 (например, вытащить из имеющегося на руках VHD-образа). Либо можно просто скачать отсюда (skydrive)
Далее придется переписать файл c:bootmgr. Файл c:windowssystem32bcdedit.exe, в принципе, можно не перезаписывать (просто запускать из другого места). На всякий случай, рекомендую сохранить старые версии.
Примечание: для перезаписи могу понадобится права на полное владение файлами.
2. Открываем консоль (cmd) с админскими правами, на всякий случай, делаем копию текущих записей и попутно создаем новую запись:
bcdedit /copy {current} /d “Windows 7”
Команда вернет GUID вновь созданной записи.
3. Далее нужно прописать адрес с VHD-диском для загрузки
bcdedit /set {GUID} device vhd=[c:]vhdwin7b.vhd
bcdedit /set {GUID} osdevice vhd=[c:]vhdwin7b.vhd
4. Если вы хотите, чтобы добавленная система была последней в списке ОС при загрузке, нужно выполнить следующую команду
bcdedit /displayorder {GUID} /addlast
Запись с соответствующим GUID переносится в конец (подобным образом можно добиться любого нужного порядка).
5. Если вы хотите поменять название системы при загрузке, нужно выполнить следующую команду
bcdedit /set {GUID} description “Windows 7 — VHD”
6. Для форсирования автоматического определения в Windows диска через соответствующий уровень абстракции — Hardware Abstraction Layer —следует выполнить следующую команду
bcdedit /set <guid> detecthal on
Готово! Можно перезагружаться. После загрузки Windows 7 начнет устанавливать нужные драйвера для вашего реального оборудования. Попросит перезагрузиться. После этого можно нормально работать. С Aero!
Если посмотреть на диски, присутствующие в системе, будет видно, что помимо виртуального диска на 16 Гб (обведен оранжевым), с которого, собственно, загружена Win7, также присутствуют второй раздел виртуального диска на 200 Мб под системные файлы и реальный(!) жесткий диск, установленный на компьютере.
Если отрыть реальный диск и посмотреть, где находится файл с образом системы
можно обнаружить, что размер файла увеличился до 16 Гб. Все дело в том, что наш VHD-образ был автоматически сконвертирован в образ с фиксированным размером, то есть занял максимально возможные 16 Гб. Это ускоряет работу системы.
Стоит также отметить, что этот образ по-прежнему можно загружать через Virtual PC.
Бывают такие ситуации, когда необходимо на одном компьютере запускать различные операционные системы, а использование виртуальных машин невозможно или не требуется.
В этой статье я расскажу, как создать виртуальный жесткий диск (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?
В статье «Создаем загрузочный диск VHD», опубликованной в прошлом номере журнала Windows IT Pro/RE, я изложил принципы создания загрузочного виртуального жесткого диска. На этот раз я хочу рассказать о том, как можно загружать с виртуального жесткого диска системы Windows 7 Enterprise и Windows 7 Ultimate
. Приношу свои извинения пользователям систем 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:imagesimage.vhd нужно будет ввести следующие инструкции:
bcdedit/set {61bed0dc-ddd7-11df-9094-70f3954a3108} device vhd=[c:]imagesimages.vhd bcdedit/set {61bed0dc-ddd7-11df-9094-70f3954a3108} osdevice vhd=[c:]imagesimages.
Приведенные команды не отличаются особым изяществом, но наш пример показывает, как они формируются. Сначала следует 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
Про чистую установку Windows 7 я уже писал в этой статье
Устанавливаем Windows 7. А эта статья для тех, кто хочет попробовать работу Windows 7 на своем компьютере, но по каким-то причинам не рискует этого делать — не хочется,переразбивать разделы на жестком диске, есть сомнения в дальнейшей работоспособности или совместимости с уже установленной ОС.
Но именно из-за некоторых новых возможностей Windows 7 и Windows Server 2008 R2 лишены этой проблемы. Теперь установить ОС Windows 7 рядом с уже существующей, ни коим образом не затронув ее базовую функциональность, разбивку дисков или файловую структуру. Кроме того, вы можете спокойно установить неколько независимых копий ОС Windows 7 на одном разделе и успешно между ними переключаться.
Все это реализовано довольно просто — файлы .VHD, известные как виртуальные диски, Windows 7/Windows Server 2008 R2 теперь воспринимают как отдельные разделы и поддерживают загрузку ОС, установленных внутри этих файлов. Но, никакого отношения к вирутализации данный случай не имеет — система внутри VHD загружается также, как если бы ее файлы находились просто на «обычном», разделе диска типа С: или D:. Т.е., создаем файл .VHD нужного размера на уже существующей файловой системе того или иного диска, в процессе установки Windows 7 или Windows Server 2008 R2 монтируем этот VHD-файл, как отдельный раздел диска, устанавливаем в него ОС… Все… Можем повторить процедуру M, нет, лучше N раз, пока не закончится место на «родительском» разделе и установить столько ОС, сколько влезет. При этом как ОС, установленная на «радительском» разделе, так и ОС в других .VHD, останутся нетронутыми.
Перспективы, как вы понимаете, колоссальные, как для обеспечения ускоренного развертывания, так и для обеспечения отказоустойчивости и динамического распределения нагрузки при помощи виртуализации.Теперь любая виртуальная машина при потребности в повышенных аппаратных ресурсах может быть переведена в «физическое» состояние простым перенаправлением загрузчика физического хоста на файл .VHD этой виртуальной машины, и, наоборот — любая ОС, работающая на физическом хосте, может быть тут же превращена в виртуальную. Перспективы заманчивые… Вплоть до скорой реализации «Восстания машин» и «Матрицы».
Ну что же ,пристпим к практике.У вас под рукой есть скромный ПК или ноутбук, на жестком диске которого только один раздел С:, и на нем присутствует 50ГБ свободного места. Вы хотите установить сюда Windows 7 beta, но при этом сохранить установленную на диске ту же Windows Vista.
Итак, установка Windows 7 или Windows Server 2008 R2 на VHD. Всё не так уж и сложно.
Скачиваем Windows 7 БЕСПЛАТНО Windows 7 Максимальная Ultimate x86 Офф. Box можно со страницы https://kompkimi.ru/?p=1700
- Записываем «скачаный» образ .ISO на диск или делаем из образа загрузочный USB подробно как сделать заргузочную флэшку читаем здесь https://kompkimi.ru/?p=2322 с установкой Windows 7 (для нетбуков просто супер)
- Загружаем наш ПК с полученого диска/USB
- Подтверждаем установку, выбираем язык и редакцию, соглашаемся с лицензией и все такое… Не боимся, все с вашей текущей системой будет нормально…
- Доходим до шага мастера установки, где нас просят выбрать или создать тот раздел диска, на который будет установлена Windows 7.
Далее следуем инструкции!
Нажимаем комбинацию клавиш Shift+F10, мастер запускает командную строку CMD.EXE. В окне CMD.EXE запускаем программу diskpart. Немного ждем и получаем приглашение DISKPART>
Далее идет несколько шагов — создание непосредственно файла .VHD, будущего диска для установки нового экземпляра Windows 7, выбор и монтирование этого файла как «реального», с точки зрения мастера установки, диска.
В приглашении DISKPART> вводим команду create vdisk file=»C:Win7.vhd» maximum=30720
Данная команда создает файл .VHD на диске С: с именем Win7.vhd (диск, папка расположения и имя файла зависят только от вашей системы и фантазии), максимальный размер будущего виртуального диска определен как 30ГБ, при этом тип .VHD определен как «фиксированного размера», т.е. файл изначально будет занимать 30ГБ на «родительской» файловой системе. Это обеспечит лучшую производительность и меньшую вероятность сбоев, покольку если вы укажите тип как «динамически расширяемый» (type=EXPANDABLE), то, во-первых, это потребует дополнительных дисковых операций по мере необходимости увеличения реального размера .VHD, а во-вторых, если «вдруг» на родительском разделе место закончится раньше, чем такой файл достигнет своего максимального размера — то за последствия для ОС, использующей этот файл, никто не отвечает С другой стороны — 30ГБ дискового пространства более чем достаточно для установки системы, тем более что файлы пользователя могут храниться на файловой системе «физического» диска, который будет также доступен ОС, установленной на .VHD. И тут динамический тип позволяет съэкономить дисковое пространство. Выбор, как говорится — за вами. Для более полного ознакомления с параметрами create vdisk рекомендую познакомиться, выполнив в строке DISKPART> команду help create vdisk
После успешного выполнения команды create (процесс может занимать длительное время при создании фиксированного файла с большим максимальным значением размера) выполняем следующие команды:
DISKPART> select vdisk file=»C:Win7.vhd» — выбор созданного .VHD для дальнейших операций в рамках утилиты diskpart
DISKPART> attach vdisk — монтирования выбранного .VHD-диска как нового диска в системе
После успешного выполнения всех операций командой exit выходим из утилиты diskpart, и еще раз команда exit — уже в приглашении CMD.EXE для закрытия командной строки.
Мы вернулись в окно мастера установки с выбором диска для установки Windows 7. В нем нажимаем кнопку Refresh, расположенную под списком дисков. Видим наш новый диск, выбираем его, нажимаем Next.
Все, процесс установки Windows 7 на .VHD диск, который мы только что создали, пошел… При это будет не только установлена новая ОС, но и подменен загрузчик на «физическом» системном разделе для успешного старта с .VHD. Кстати, при установке Windows 7/Windows Server 2008 R2 на «голую» машину, мастер установки автоматически создает на диске системный раздел в 200МБ, на котором помещается загрузчик, а уже для самой системы создается отдельный раздел.
И еще один, далеко не праздный, вопрос. Как загрузиться с уже существующего VHD-файла, в котором установлена Windows 7, например, перенесенного с другого ПК. Все очень просто — необходимо подменить файлы загрузчика bootmgr/bcdedit.exe на системном разделе версиями, взятыми из уже установленной Windows 7. Заметьте, такой тип загрузчика и простота его замены поддерживается только для Windows Vista/Windows Server 2008, а с Windows XP придется повозиться (копать в направлении bootsect). Далее, получив на «физической» ОС загрузчик от Windows 7, запускаем «новый» bcdedit, чьи параметры device и osdevice теперь поддерживают значения типа vhd=C:Win7migrated.vhd. В общем это будет выглядеть примерно так: bcdedit /set {boot_record_GUID} device vhd=C:Win7migrated.vhd (подробнее читаем документы в Сети). После таких экспериментов перегружаем систему и видем меню загрузчика, дополненое новым пунктом и передающем управление на перенесенный файл .VHD .Удачной вам всём установки Windows 7/Windows Server 2008 R2 на VHD-диски и интересного тестирования.
P.P.S. Если у Вас есть вопросы, желание прокомментировать или поделиться опытом, напишите, пожалуйста, в комментариях ниже.
- Распечатать
Оцените статью:
- 5
- 4
- 3
- 2
- 1
(0 голосов, среднее: 0 из 5)
Поделитесь с друзьями!
В данной статье описывается способ запуска виртуального диска VHD из ранее установленной Windows 7 beta (также этот способ работает в WinServer R2).
Шаг 1. Убедитесь что раздел жесткого диска, на котором в данный момент находится vhd-файл имеет не менее 16Гб свободного места (это очень важно для стабильной работы системы — в нашем случае file.vhd находится в корне диска C:).
Шаг 2. В корневом каталоге Вашего системного диска найдите файлы bootmgr и bcdedit.exe, оба из них потребуются для дальнейшего изменения загрузочных записей.
Примечание:
обязательно создайте резервные копии данных файлов на случай непредвиденной ситуации с целью сохранения работоспособности вашей текущей операционной системы.
Шаг 3. Убедитесь, что Вы имеете права Администратора. В меню «Пуск» введите cmd и в открывшейся консоле выполните следующее:
1) bcdedit /copy {current} /d “Windows 7” //создаст точную копию текущих загрузочных записей и выдаст вам GUID-идентификатор вновь созданной записи, который потребуется в дальнейшем
2) bcdedit /set {GUID} device vhd=[c:]file.vhd //вместо {GUID} необходимо подставить значение из первой команды
3) bcdedit /set {GUID} osdevice vhd=[c:]file.vhd
4) bcdedit /displayorder {GUID} /addlast //в списке загружаемых систем при включении компьютера новая сборка Windows 7 станет поледней
5) bcdedit /set {GUID} description “{NAME}” //позволяет задать «имя» для нашей новой системы в boot-списке
6) bcdedit /set detecthal on //данная команда служит для более быстрого оределения виртуального диска при загрузке компьютера, появится листинг menu.lst, в который нужно внести следующие изменения:
title Windows 7
root (hd0,0)
chainloader /bootmgr
Шаг 4. Необходимо перезагрузить компьютер
После перезагрузки Вы должны увидеть список доступных на вашем компьютере операционных систем, в котором присутствует и новенькая сборка Windows 7. Если ее выбрать, то произойдет загрузка системы и установка всех необходимых драйверов под именно Ваше оборудование.
После того, как система придет в рабочее состояние, в окне Компьютер (Computer) Вы сможете обнаружить наличие подключенного виртуального диска емкостью 16Гб, дополнительный виртуальный раздел емкостью 200Мб и все ваши физические дисковые накопители. Если открыть диск, где ранее располагался vhd-файл, то можно обнаружить, что его размер увеличился до тех самых 16Гб, причем размер этот теперь строго ограничен.
Оцените статью: Голосов