Драйверы сетевых контроллеров на неподдерживаемых системах

21.11.2019

Речьasus110 пойдет об установке драйверов для сетевых карт на версии ОС Windows, под которые производитель не выпустил драйвера..
В частности будет рассмотрена установка драйвера сетевухи встроенной в материнскую плату ASUS H110M-R. Так уж вышло, что производители от Intel решили «позаботиться» о нас, выпустив драйвера под эту материнку только для десктопов, игнорируя возможность использования этой материнской платы в серверных решениях.
ASUS H110M-R содержит в себе сетевой адаптер модели Intel I218-V (аналогичная проблема и с I217-V,82573V и другими).
Столкнувшись на днях с этой проблемой, — начал активно искать информацию о том как решить ее.
множество ресурсов предлагают примерно одинаковый способ, но в моем случае предложенные варианты не сработали, но немного RTFM дали положительный результат.
Итак, первоначально после установки Windows 2012 Server, сетевой адаптер не определился. Идем в свойства адаптера помеченного системой как «неопределенное устройство» и смотрим ID оборудования, и видим вот такую строку: pci_ven_8086&dev_15a1&subsys_85c41043&rev_00

Для установки драйвера данного адаптера на Windows 2012 Server необходимо скачать пакет драйверов сетевого адаптера под Windows 8 и выше, и найти в нем каталог Pro1000 . Он содержит подкаталоги NDIS6X, где Х — версия операционной системы.
1 — Server 2008 и Vista
2 — Windows 7 и Server 2008 R
3 — Windows 8 и Server 2012
4 — Windows 8.1 и Server 2012 R2

Я использовал Windows 2012 Server Standart,  поэтому мой выбор падает на каталог  NDIS63
Ищем соответствующий ему inf-файл. INF-файлов в каталоге много, найти нужный легко, включив поиск *.inf-файла содержащего текст 15a1.
Теперь открываем его для редактирования (у меня это e1d63x64.inf).
Ищем секцию [ControlFlags] и удаляем из нее все строки, оставив секцию пустой.
Далее смотрим раздел [Intel.NTamd64.6.2.1] и в нем ищем строки в которых DeviceID содержит информацию о нашем сетевом адаптере:
%E15A1NC.DeviceDesc%            = E15A1.6.2.1,       PCI\VEN_8086&DEV_15A1
%E15A1NC.DeviceDesc%            = E15A1.6.2.1,       PCI\VEN_8086&DEV_15A1&SUBSYS_00008086

Копируем их и добавляем в конец секции [Intel.NTamd64.6.2].
Обратите внимание на различие в названиях секций  [Intel.NTamd64.6.2.1] и [Intel.NTamd64.6.2].  Х.Х.Х. — декстопы, Х.Х. — серверные платформы. Таким образом мы даем серверной операционной системе возможность получить информацию о драйвере.
Сохраняем, закрываем — драйвер готов. Осталось скормить его операционке, а вот тут и начинается самое интересное 🙂
Если просто попытаться установить драйвер — установка запустится, но в конце скажет что неверная информация о контрольной сумме или что драйвер не подписан и не может быть установлен.
Теперь научимся обходить это. Процесс не сложный.
Для начала нужно отключить встроенную систему безопасности, выполнив в командной строке от имени администратора  команды, позволяющие отключить проверку цифровой подписи.
На многих форумах и блогах пишут о выполнении следующей последовательности команд:
bcdedit.exe /set nointegritychecks ON
bcdedit.exe /set TESTSIGNING ON
Выполнение каждой должно завершиться без ошибок и предупреждений. Но! Для Windows 2012 Server такие команды не применимы, поскольку не поддерживается такая последовательность. Выполнив bcdedit.exe /help вы убедитесь в том, что там отсутствует команда nointegritychecks, поэтому нужно немного изменить строки и применить их в следующей последовательности:
bcdedit.exe /set loadoptions DDISABLE_INTEGRITY_CHECKS
bcdedit.exe /set loadoptions TESTSIGNING ON
После того как команды были успешно выполнены, необходимо перезагрузить компьютер и попробовать установить
драйвер и при нормальной ситуации появится окно запроса на разрешение установить неподписанный драйвер, согласившись с которым, вы получите нормально установленный рабочий драйвер.
В некоторых случаях после перезагрузки в правом нижнем углу рабочего стола может появиться надпись, что ОС работает в тестовом режиме — это никак не влияет на работу системы.
Если драйвер установился — поздравляю, а если и теперь возникает сообщение о невозможности установить неподписанный драйвер или ошибке в хэше файла, то остается исправить еще один момент.
Точно не знаю нужно ли было делать все предыдущие операции в командной строке после правки BIOS, — не проверял, а теперь перегружаемся и входим в биос и в разделе «Загрузка» переключаемся из режима UEFI в режим «Другая ОС«. Сохраняем натройки биос, перегружаем машину, входим в систему, ставим драйвер. Все! Готово!

В благодарность воспользуйтесь кнопками соцсетей, справа от текста 🙂
P.S: Ниже прикрепил результат правки файла драйвера.

Готовый драйвер для Windows 2012 Server Standart

 

Оставить комментарий