Загрузка Windows 7 с VHD-образа

    В прошлый раз мы создали 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:\windows\system32\bcdedit.exe, в принципе, можно не перезаписывать (просто запускать из другого места). На всякий случай, рекомендую сохранить старые версии.



    Примечание: для перезаписи могу понадобится права на полное владение файлами.

     

    2. Открываем консоль (cmd) с админскими правами, на всякий случай, делаем копию текущих записей и попутно создаем новую запись:

    bcdedit /copy {current} /d “Windows 7”

    Команда вернет GUID вновь созданной записи.

    3. Далее нужно прописать адрес с VHD-диском для загрузки

    bcdedit /set {GUID} device vhd=[c:]\vhd\win7b.vhd

    bcdedit /set {GUID} osdevice vhd=[c:]\vhd\win7b.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.
    Метки:
    Поделиться публикацией
    Реклама помогает поддерживать и развивать наши сервисы

    Подробнее
    Реклама
    Комментарии 50
    • 0
      опечатки:
      devise
      QUID
      • 0
        Спасибо, поправил :)
      • –24
        Ё маё! хватит дрочить на недоделанную операционку. Каждый день про неё новости.
        Хватит!!! Уже миллион раз все видели этот интерфейс и уже всё изучили по описаниям.
        Лучше про начинку пишите, а не про обертку.

        Извините, наболело.
        • +12
          Самое интересное, что этот топик не то, что вы написали, а как раз расказ об очень интересной технлогии. Раньше такое можно было сделать только в линуксе, или в обратную сторону, когда в виртуальную машину загружалась винда с реального раздела диска.
          • 0
            Спасибо!!! очень полезная статья! у меня такой вопрос: можно ли это сделать под ХР, и vhd с флешки?
            зы: второе наверное можно
            • 0
              С XP, по идее можно, но нужно проверять :) Официально, это работает только в самих Win7 и Win Server 2008 R2.
          • –8
            не серчайте на дурачков, каждый зарабатывает на жизнь, как умеет.
            • +1
              Самое интересное, что этот топик не то, что вы написали, а как раз расказ об очень интересной технлогии. Раньше такое можно было сделать только в линуксе, или в обратную сторону, когда в виртуальную машину загружалась винда с реального раздела диска.
            • 0
              ммм… как-то очень легко получается.
              • 0
                Акуеть! А я так выходит вообще всё что угодно могу с ВХД грузить? Блин, просто в шоке, шикарно!
                • +1
                  все угодно помоему не работает. Некоторые нюансы с Линуксами есть
                  • +1
                    Ну, скажем так, я бы ожидал эти ньюансы от майкрософта 8-) Но, просто мне всегда хотелось попробовать поставить на корь2дуо Windows 95 8-)))
                  • 0
                    Точно можно грузить VHD с новыми системами — Win7 и Server 2008 R2.

                    По идее, система, стоящая на VHD, должна как-то уметь «понимать» на уровне драйверов/абстракции от железа, что она грузится именно с виртуального диска и это учитывать. В указанных системах эта поддержка встроена.
                    • 0
                      Я просто много пропустил статей по виртуализации. А зря…
                  • 0
                    Может немножко не в тему, устанавливал просто windows 7 не с нуля, а делал upgrade с windows vista, установка заняла около 5 часов :)
                    Программа установки, начала куда то переносить 500,000 файлов. Зато потом, все отлично заработало, почти все программы которые были установлены за два года пользования вистой, жалко почему то не подхватились драйвера на intel 2200, пришлось устанавливать в ручную, драйвера от висты подходят. Конечно windows 7, выглядит как хороший сервис пак для висты.
                    • –11
                      извините, я тоже несколько не в тему выступлю. но должен же кто-то сказать правду.
                      возможно это вас шокирует, но у меня в прошлом году установка Linux Mint заняла 20 минут. и ничего не надо было доустанавливать потом, все «из коробки» работает. счастлив уже почти год как. как будто я всю жизнь ходил на костылях, а тут, вдруг, у меня выросли крылья. ни вирусов тебе ни проблем с апгрейдами ни зависаний. а установка любого ПО занимает пару минут. и ПО этого в раскиданных по всему миру репозиториях — терабайты. на любой вкус. а как удобен shell… в общем можно еще очень долго перечислять достоинства.

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

                      PS а сколько открытий чудных я сделал за это время касательно того, как устроена опреационная система и как все это работает… и насколько неуклюжа и безобразно построена ОС Windows.
                      • +4
                        Вот как обычный програмер хочу спросить вас как медиадизайнера — а как (и чем) в линухе редактировать видео? Вот накопилось у меня много видео кусочками с утренников дочки, а как их собрать в один фильм и чтоб какие-то эффекты были, музыка фоном и т.п.? У меня стоит Ubuntu и как-то не хочется ставить винду — места нет и вообще я и в ней не знаю чем видео редактировать… Так не подскажите?
                        • +3
                          попробывал разное, остановился на вот такой паре:
                          Kino — для отбора материала с магнитофона (по IEEE1394)
                          Kdenlive — для монтажа

                          если само видео требует предварительной конвертации (монтировать лучше все в одном кодеке), то вам пригодится Avidemux

                          если есть материалы на DVD, то отграбить и переконвертировать материал вам поможет dvd::rip

                          звук лучше готовить в audacity (а если нечто более серьезное, то можно установить Ardour ardour.org/)
                          • 0
                            Kdenlive — это только для KDE или он и под гномом по человечески работать будет? А вообще — спасибо. Это как раз та программка которая мне нужна, видимо. Пока, правда, о ней почитал только на их офф.сайте немного… и все же хочу спросить: для монтажа что-то ещё есть? (меня как-то настораживает то, что version 0.7 переписали для KDE4)
                    • –1
                      Я заметил, что многие устанавливают Windows 7 в качестве основной рабочей системы.
                      Однако, следует помнить, что установленная Windows 7 Beta перестанет работать 1 августа:
                      «Also, another important thing to keep in mind is that the Windows 7 Beta will expire on August 1st, 2009».
                      windowsteamblog.com/blogs/windows7/archive/2009/01/07/information-on-downloading-and-installing-windows-7-beta.aspx
                      • +1
                        я думаю ломанная версия будет работать хоть сколько
                        • +4
                          Я думаю, к этому времени появится RC, до которого можно будет обновиться
                      • +1
                        А имеет значение в чем делался VHD?
                        • 0
                          И еще, файл с динамическим размером каждый раз тянется до максимума при такой загрузке или он «безвозвратно» конвертируется в диск с фиксированным размером?
                          • +1
                            Насколько я могу судить по своей системе, он «тянется», то есть после возврата в базовую систему размер уменьшился до 6.56 Гб
                            • 0
                              Конвертация ведь времени требует немалого, по крайней мере при простом создании фиксированного VHD при настройке Virtual PC. Или при загрузке с VHD этот процесс идет быстрее?
                              • 0
                                Трудно сказать, в целом это занимает не так уж и много времени, возможно, там не совсем конвертация (в смысле выделить полный объем, заполнить все дополнительные 8 Гб нулями и т.д.), а просто резервируется место… то есть это какой-то промежуточный формат.

                                Если место позволяет, рекомендуется сразу делать диск фиксированного размера.
                                • 0
                                  Я сразу диски выделенного размера и создаю. Для Windows 7 до прочтения это статьи тоже 16 Гб выделил :)

                                  Так вот этот процесс занял несколько минут. Притом что машина вполне себе нормальная по скорости.
                                  • +1
                                    Это нормально, при этом не просто создается файл заданного размера, но и «обнуляются» все его байты.
                          • 0
                            Надо проверять :) Но про ограничения такого рода я не слышал.
                            • +3
                              Есть способ в миллион раз проще:
                              gotch.techfaq.ru/archives/91
                            • 0
                              А для мака надо свои танцы с бубном вокруг загрузки танцевать?
                              • 0
                                Боюсь, что с маком такой фокус не пройдет… Только если инженеры Apple не напишут загрузчик, который понимает VHD файлы.
                              • +2
                                Есть способ гораздо проще, буквально час назад установил семерку. Описан он тут:
                                gotch.techfaq.ru/archives/91
                                • 0
                                  Да, все верно :) Указанный в статье по ссылке способ не предполагает ручных манипуляций над загрузчиком и возьни bcdedit, но есть две причины по которым я написал именно то, что написал:

                                  1. Хотелось рассказать о том, что происходит за кулисами дабы держать под контролем :)

                                  2. К сожалению, такой способ срабатывает не всегда: там видно, что на втором скриншоте система выдает предупреждение «Windows cannot be installed to this disk. This computer's hardware may not support booting to this disk. Ensure that the disk's controller is enabled in the computer's BIOS menu». В дальнейшем установка иногда прерывается на стадии «Expanding Features». Наверное, это как-то зависит от конфигурации оборудования…
                                • +2
                                  Стоит также отметить, что этот образ по-прежнему можно загружать через Virtual PC.
                                  Хм. А можно ли вот так: загрузившись из VHD-файла, установить Virtual PC и из-под него опять запустить Windows 7 (ту же самую) из VHD-файла (того же самого)? Не лопнет она от такой рекурсии?))
                                  • +1
                                    Хотите попробовать? :))
                                    • 0
                                      Думаю при загрузке вывалиться ошибка записи.
                                      • +1
                                        Только отойдите тогда от компьютера подальше ))))
                                      • –3
                                        эх… опять скрытая реклама семки…
                                        • 0
                                          Круто, не знал об этой возможноти загрузчика. Хотя я Aero собирался пробовать в VMWare Workstation 6.5.1 та ускорение DirectX из коробки, правда всё одно виртуализированое но всё же.
                                          • 0
                                            А возможно ли поставить на виртуальную машину Mac OS?
                                            • 0
                                              Система должна поддерживать загрузку себя с виртуального диска. Если инженеры Apple добавят эту поддержку, то вполне возможно, сейчас, вроде, нельзя.
                                              • 0
                                                Немного не в тему вопрос, но вдруг кто знает.
                                                Многие ВМ (WMWare и VirtualBox точно могут) могут загружать ОС не с виртуального диска, а с физического раздела. Еще со времен Win95 усвоил, что винда очень капризна к замене железа без, как минимум, удаления драйверов старого железа перед установкой нового, а лучше переустановки. Как в семерке с этим дело обстоит? Не будет глючить из-за того, что загружают то из-под виртуалки со своим железом (чипсет от интел вроде обычно эмулируют, а видео вообще виртуальное, остальное не столь критично вроде как), то нативно (нвидиа чипсет и ати видео)? У XP были проблемы с этим, вплоть до BSOD, а семерка сможет корректно подставлять нужные дрова для видео и чипсета?
                                                • 0
                                                  Обычно BSODы возникают, когда система с установленным драйвером ACPI загружается на системе без его поддержки, или наоборот. Причем это не обязательно должны быть разные машины, можно отключить ACPI в биосе и словить BSOD на той-же машине.
                                                  • 0
                                                    Врать не буду, давно дело было, но маловероятно, хотя и возможно, что и в ACPI дело было. Но все-таки мне кажется, что не любит XP когда винт с нею переставляют туда-сюда с нвидиевской мамки с амд процом и атишной видяхой на интеловскую маму и проц с нвидиа видяхой (соответственно на каждой машине ставятся по одному разу все последние дрова включая разные AGP_GART и IDE контроллеры). Хотя может и не XP виновата, а дробва кривые, но все равно от этого не легче.
                                                    • 0
                                                      Винда привязывается к ide-контроллеру, и если поставить стандартный драйвер, то можно будет грузиться с любой машины.
                                                  • 0
                                                    К сожалению BSOD при загрузке pnp менеджера.
                                                    bootmgr и bcdedit у меня из Windows 7. На VHD поставил 32-х битную Windows 7…

                                                    Нет идей, в чем может быть проблема?)
                                                    • 0
                                                      Проблема может быть в поддержке ACHI. Попробуйте временно отключить его в BIOS.

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