Найти в Дзене
Эникей на передержке

При установке Windows / Windows Server из образа не отображаются диски

Почти все хостинг-провайдеры предлагают свои образы операционных систем для быстрого развёртывания виртуальных машин. Если по какой-то причине потребуется развернуть Windows из собственного образа, есть риск столкнуться с проблемами обнаружения запоминающих устройств: Я сталкивался с таким у Selectel и Hetzner, но у коллег были проблемы и с другими хостерами. Вся причина в отсутствии драйверов, которые необходимо либо подгрузить с другого iso-образа, либо вшить в установочный образ Windows самостоятельно. Способ 1. Установка драйверов с другого iso-образа Загрузите последнюю версию драйверов для Windows (и Windows Server) по ссылке: virtio-win.iso Добавьте к ВМ ещё один CD/DVD-привод virtio-win.iso или подключите его вместо установочного образа Windows, а затем найдите недостающие драйверы: После установки подходящих драйверов диски отобразятся в окне установки: Перед продолжением установки подключите обратно установочный образ Windows! Способ 2. Добавление драйверов в установочный об
Оглавление

Почти все хостинг-провайдеры предлагают свои образы операционных систем для быстрого развёртывания виртуальных машин. Если по какой-то причине потребуется развернуть Windows из собственного образа, есть риск столкнуться с проблемами обнаружения запоминающих устройств:

Я сталкивался с таким у Selectel и Hetzner, но у коллег были проблемы и с другими хостерами. Вся причина в отсутствии драйверов, которые необходимо либо подгрузить с другого iso-образа, либо вшить в установочный образ Windows самостоятельно.

Способ 1. Установка драйверов с другого iso-образа

Загрузите последнюю версию драйверов для Windows (и Windows Server) по ссылке: virtio-win.iso

Добавьте к ВМ ещё один CD/DVD-привод virtio-win.iso или подключите его вместо установочного образа Windows, а затем найдите недостающие драйверы:

У вас путь к драйверу может отличаться
У вас путь к драйверу может отличаться

После установки подходящих драйверов диски отобразятся в окне установки:

Обнаружено 2 логических диска
Обнаружено 2 логических диска

Перед продолжением установки подключите обратно установочный образ Windows!

Способ 2. Добавление драйверов в установочный образ

Этот способ будет удобен для тех, кому не помог предыдущий пункт или кто планирует многократную установку.

Нам понадобятся:

  • ПК под управлением Windows или Windows Server (поддерживаемых версий);
  • Установочный iso-образ, в который планируется добавить драйверы;
  • Драйверы virtio-win.iso;
  • Архиватор (для распаковки iso);
  • oscdimg для упаковки всего этого безобразия обратно в iso.

Шаг 1. Распакуйте образ в папку, не имеющую кириллических символов в названии (т.к. я буду добавлять драйверы в Windows Server 2016, назвал папку ws2016). Аналогично распакуйте virtio-win.iso и oscdimg, а также создайте папку tmp:

Я распаковал всё в "Загрузки", вы можете использовать другой каталог
Я распаковал всё в "Загрузки", вы можете использовать другой каталог

Шаг 2 Запустите PowerShell от имени Администратора и выполните команду:

$win="<путь к распакованному iso>"

В моём случае команда будет выглядеть так:

$win="C:\Users\Anykey\Downloads\ws2016\"

Аналогично укажем пути к папке для временных файлов, драйверов и oscdimg:

$tmpfiles="C:\Users\Anykey\Downloads\tmp";
$virtio="C:\Users\Anykey\Downloads\virtio";
$oscdimg="C:\Users\Anykey\Downloads\oscdimg-amd64";

*ваши пути могут отличаться

Теперь необходимо вывести список редакций, присутствующих в образе:

Get-WindowsImage -ImagePath $win\sources\install.wim
Для установки доступны 4 редакции, меня интересует Windows Server 2016 Standard (Desktop Experience) с индексом 2
Для установки доступны 4 редакции, меня интересует Windows Server 2016 Standard (Desktop Experience) с индексом 2

Смонтируем образ выбранной редакции, чтобы добавить драйверы:

Mount-WindowsImage -Path $tmpfiles -ImagePath $win\sources\install.wim -Index 2

*ваш индекс может отличаться, см. скриншот выше

Выбранный образ смонтирован в указанный каталог
Выбранный образ смонтирован в указанный каталог

Для рекурсивного поиска и добавления драйверов, выполним следующую команду:

Add-WindowsDriver -Path $tmpfiles -Driver $virtio -Recurse -ForceUnsigned
Процесс добавления драйверов
Процесс добавления драйверов

Осталось отмонтировать образ с сохранением изменений:

Dismount-WindowsImage -Path $tmpfiles –Save

Шаг 3. Чтобы сократить размер образа, оставим только изменённую редакцию Windows Server:

DISM /Export-Image /SourceImageFile:$win\sources\install.wim /SourceIndex:2 /DestinationImageFile:$win\sources\install.esd /Compress:max;
Remove-Item -Path $win\sources\install.wim;

*ваш индекс может отличаться

Из install.wim извлечена редакция Win Server с индексом 2 и помещена в сжатый install.esd
Из install.wim извлечена редакция Win Server с индексом 2 и помещена в сжатый install.esd

Шаг 4. Чтобы диски определялись в программе установки, аналогичным образом добавим драйверы в Windows Setup. Для начала узнаем индекс образа:

Get-WindowsImage -ImagePath $win\sources\boot.wim
Образ установки имеет индекс 2
Образ установки имеет индекс 2

Смонтируем образ и добавим драйверы, а затем сохраним изменения:

Mount-WindowsImage -Path $tmpfiles -ImagePath $win\sources\boot.wim -Index 2;
Add-WindowsDriver -Path $tmpfiles -Driver $virtio -Recurse -ForceUnsigned;
Dismount-WindowsImage -Path $tmpfiles –Save

Шаг 5. Запакуем изменения обратно в iso-образ, выполнив команду:

Start-Process -FilePath "$oscdimg\oscdimg.exe" -ArgumentList "-h -m -o -u2 -udfver102 -bootdata:2#p0,e,b$win\boot\etfsboot.com#pEF,e,b$win\efi\microsoft\boot\efisys.bin $win $tmpfiles\windows.iso"

Если в вашем образе отсутствует каталог efi, скопируйте его из более нового образа ОС или оставьте поддержку только BIOS:

Start-Process -FilePath "$oscdimg\oscdimg.exe" -ArgumentList "-n -m -b$win\boot\etfsboot.com $win $tmpfiles\windows.iso"
Итоговый образ появится в папке tmp
Итоговый образ появится в папке tmp

Заключение

На этом установка недостающих драйверов завершена.

Ставь лайк и подписывайся на канал, чтобы чаще видеть в ленте подобный контент. Всем добра!)