Устновка Hyper-V Server на флэш-накопитель USB
23 May 2018Шаг 1. Создание виртуального жесткого диска
На обслуживающем компьютере создайте каталог для VHD и с помощью средства DiskPart создайте, присоедините, разбейте на разделы и отформатируйте новый виртуальный жесткий диск. VHD можно присоединить с помощью команды attach vdisk, добавляющей VHD-файл как диск к контроллеру хранилища на основном компьютере. Виртуальный диск отобразится как диск R: после выполнения этой процедуры. Команда detach предотвратит появление этого виртуального диска на основном компьютере.
В этом примере создается VHD фиксированного типа объемом 12 Гбайт. Это рекомендуемый размер VHD, развертываемого на флэш-накопителе USB объемом 16 Гбайт. Обязательно оставьте место на VHD для обновлений в будущем; кроме того, как минимум 25% объема флэш-накопителя USB должно быть выделено под выравнивание износа.
mkdir c:\vhd
diskpart
create vdisk file=c:\vhd\Hyper-V.vhdx maximum=12288 type=fixed
select vdisk file=c:\vhd\Hyper-V.vhdx
attach vdisk
create partition primary
assign letter=r
format quick fs=ntfs label=Hyper-V
exit
Шаг 2. Применение образа Microsoft Hyper-V Server 2012 R2
С помощью средства ImageX примените WIM-файл к основному разделу VHD. В командной строке введите следующие команды.
cd /d "C:\Program Files (x86)\Windows Kits\8.1\Assessment and Deployment Kit\Deployment Tools\amd64\DISM"
imagex /apply d:\sources\install.wim 1 r:\
Теперь раздел VHD установлен как r:\. Эта буква раздела будет использоваться в примерах ниже.
С помощью средства DiskPart отключите виртуальный диск от обслуживающего компьютера после применения образа. В командной строке введите следующие команды.
diskpart
select vdisk file=c:\vhd\Hyper-V.vhdx
detach vdisk
exit
Шаг 3. Подготовка флэш-накопителя USB
Перед размещением VHD Hyper-V на флэш-накопитель USB его необходимо отформатировать как диск NTFS.
Вставьте флэш-накопитель USB в обслуживающий компьютер под управлением операционной системы Windows 7 или Windows Server 2012 R2.
С помощью средства DiskPart определите, какой номер диска назначен флэш-накопителю USB. В командной строке введите следующие команды.
diskpart
list disk
Найдите флэш-накопитель USB и запомните номер диска.
С помощью средства DiskPart отформатируйте устройство целиком как NTFS и создайте основной раздел. Пример
select disk <UFD disk number>
clean
create partition primary
select partition 1
active
format quick fs=ntfs
assign letter=z
exit
Теперь раздел флэш-накопителя USB установлен как z:\. Эта буква раздела будет использоваться в примерах ниже.
Шаг 4. Копирование файлов на флэш-накопитель USB
Скопируйте VHD на флэш-накопитель USB и обновите загрузочный код так, чтобы он был совместим с диспетчером загрузки Windows (Bootmgr).
Скопируйте файл VHD на флэш-накопитель USB. В командной строке введите следующие команды.
copy c:\vhd\Hyper-V.vhdx z:
С помощью средства Bootsect обновите основной загрузочный код флэш-накопителя USB так, чтобы он был совместим с Bootmgr.
cd /d "C:\Program Files (x86)\Windows Kits\8.1\Assessment and Deployment Kit\Deployment Tools\amd64\BCDBoot"
bootsect /nt60 z: /force /mbr
Шаг 5. Создание на флэш-накопителе USB хранилища BCD
Присоедините VHD к обслуживающему компьютеру, чтобы создать в корневом каталоге флэш-накопителя USB хранилище данных конфигурации загрузки (BCD).
Вставьте флэш-накопитель USB в обслуживающий компьютер.
С помощью средства DiskPart присоедините VHD к флэш-накопителю USB. В командной строке введите следующие команды.
diskpart
select vdisk file=z:\Hyper-V.vhdx
attach vdisk
exit
С помощью средства BCDboot, расположенного в Windows 7 или Windows Server 2012 R2, скопируйте файлы среды загрузки с виртуального диска в корневой каталог флэш-накопителя USB. Средство BCDboot создаст хранилище BCD, позволяющее выполнить загрузку с виртуального жесткого диска. Дополнительные сведения о средстве BCDboot см. в разделе "Параметры командной строки BCDBoot".
В командной строке Windows PE введите следующую команду.
bcdboot r:\windows /s z:
Шаг 6. Отключение подкачки
Подкачка может привести к преждевременному износу флэш-накопителя. Перед развертыванием флэш-накопителя USB рекомендуется отключить подкачку.
Microsoft Hyper-V Server 2012 R2 следует настраивать без подкачки в процессе создания образа, если система будет установлена на флэш-накопитель, а не на традиционный жесткий диск. Отключение подкачки значительно уменьшает износ флэш-накопителя и продлевает период эксплуатации системы. По умолчанию подкачка в Microsoft Hyper-V Server 2012 R2 включена, поэтому при развертывании на флэш-накопитель ее следует явно отключить.
Загрузите куст реестра присоединенного VHD на флэш-накопитель USB во временный куст основной системы. В командной строке введите следующие команды.
reg load HKLM\HyperVTemp r:\windows\system32\config\system
Очистите значение Paging Files в реестре. В командной строке введите следующие команды.
reg add "HKLM\HyperVTemp\ControlSet001\Control\Session Manager\Memory Management" /v PagingFiles /t REG_MULTI_SZ /d "" /f
Удалите существующую запись Page Files. В командной строке введите следующие команды.
reg delete "HKLM\HyperVTemp\ControlSet001\Control\Session Manager\Memory Management" /v ExistingPageFiles /f
Выгрузите временный куст реестра. В командной строке введите следующие команды.
reg unload HKLM\HyperVTemp
Шаг 7. Отсоединение виртуального жесткого диска
Теперь флэш-накопитель USB можно отключить от обслуживающего компьютера и развернуть на основном сервере.
Отсоединение виртуального жесткого диска. В командной строке введите следующие команды.
diskpart
select vdisk file=z:\Hyper-V.vhdx
detach vdisk
exit
Дальнейшие действия
Флэш-накопитель USB, на который установлен сервер Hyper-V Server, можно вставить в любой компьютер с возможностями аппаратной поддержки виртуализации и совместимый с Hyper-V. Выполнять загрузку с VHD можно на компьютере, уже имеющем другие установки операционных систем, как один из вариантов загрузки, а можно использовать сервер на флэш-накопителе как единственную операционную систему на компьютере.
После перезапуска компьютера диспетчер загрузки загружает образ Hyper-V Server, содержащийся в VHD-файле. Начинается установка.
Дополнительные сведения
Несмотря на то, что система Microsoft Hyper-V Server 2012 R2 основана на компонентах системы Windows Server 2012 R2, в Microsoft Hyper-V Server 2012 R2 внесены некоторые изменения, чтобы поддерживать загрузку с USB.
Увеличение времени ожидания загрузочного устройства
Чтобы система могла нормально загрузиться с флэш-накопителя, значение раздела реестра PollBootPartitionTimeout увеличено. Этот раздел реестра контролирует время, в течение которого ядро ждет, пока служба PnP обнаружит загрузочный диск; по истечении этого времени ядро останавливается с кодом ошибки 0x7B. Значение по умолчанию для Microsoft Hyper-V Server 2012 R2 установлено на 30000, чтобы предоставить флэш-накопителям больше времени для ответа. Поэтому партнерам-производителям оборудования не нужно предпринимать дополнительных действий. В Windows Server 2012 R2 этот раздел пуст, а в ядре системы определено значительно меньшее значение по умолчанию.
Раздел реестра: HKLM\SYSTEM\CCS\Control\PnP\PollBootPartitionTimeout
Значение реестра: 30000
Подключение драйверов USB во время загрузки
Чтобы система могла загружаться с встроенного флэш-накопителя USB, драйверы USB подключаются при загрузке, а не по требованию. Это поведение Microsoft Hyper-V Server 2012 R2 по умолчанию, поэтому партнерам-производителям оборудования не нужно предпринимать дополнительных действий.