С недавнего времени в моём домашнем гипервизоре достаточно много памяти для того, чтобы обновить windows машины с XP/2003 на что-то более новое, а более новое уже активируется не так просто, поэтому было решено использовать старый добрый SLIC.
Технически есть минимум два варианта реализации SLIC в гостевых машинах:
1. Проброс ACPI таблиц материнской платы гипервизора.
В принципе, если гипервизор (сервер) продавался с Windows 2008, активирующейся посредством SLIC, или воркстейшон был с Win7 Pro, этот вариант можно использовать. Реализуется всё это дело достаточно просто — vmx файл виртуальнй машины нужно изменить/дополнить так:
acpi.passthru.slicvendor = "TRUE"
SMBIOS.reflecthost = "TRUE"
И в случае если в BIOS гипервизора есть необходимая информация, она будет транслироваться в виртуальные машины, причем не во все, а только в те, vmx файл которых изменён.
Как ни странно, BIOS материнской платы SuperMicro H8SGL-F моего гипервизора не только содержит SLIC таблицы, но и Windows 10 на этой плате активируется, но я решил всё же использовать другой способ. Он на мой взгляд поинтереснее.
2. Модификация виртуального BIOS гипервизора.
Данный способ является единственно возможным в случае когда железо гипервизора не даёт так просто модифицировать свои прошивки и не содержит в оригинальных прошивках нужную информацию.
Для реализации данного способа нам понадобится следующая программная оснастка:
- ESX / ESXi Bios Tools (локальные версии 1.1.5 и 2.1.1)
Для извлечения и возвращения виртуального BIOS. - RWEverything (локальные версии 1.6.9_x86 и 1.6.9_x64)
Для извлечения ACPI таблиц. - PhoenixTool 2.0.х (найдите в сети самостоятельно)
Для SLIC модификации
Помимо оснастки необходимо включить на гипервизоре SSH и иметь до него доступ.
Для гипервизора ESXi версии 5.5u03 + все апдейты на момент написания записи я использовал EsxBiosTools 1.1.5 и всё прошло без проблем, для ESXi 6 авторы Esx Bios Tools рекомендуют использовать версию 2.x. ACPI таблицы были извлечены в свежей виртуальной машине под Win7, BIOS модифицировался без проблем и так же без проблем был зашит на место.
Из минусов/особенностей данного способа нужно отметить следующие моменты: slic будет на всех виртуальных машинах; при обновлении vmware base возможно придётся повторно произвести модификацию.
Намеренно не делаю скриншотов и не вдаюсь в мелкие подробности, т.к. считаю что желание реализовать подобные идеи подразумевает некоторый уровень технической подготовки.