Вики IT-KB

Пошаговые руководства, шпаргалки, полезные ссылки...

Инструменты пользователя

Инструменты сайта


microsoft-windows:windows-10:enterprise-deployment-windows-10-with-sccm-2012-r2:mainboard-uuid-doubles

Развёртывание Windows 10 в SCCM 2012 R2 - Дубли UUID материнских плат

Достаточно часто можно сталкиваться с проблемой дублирующихся UUID материнской платы, тем самым мы будем иметь невозможность загрузки по сети и выполнения доступных последовательностей задач из WinPE.

Подобная проблема всегда отражается в логе SMSPXE.log на сайт-сервере, где регистрируются сообщения типа:

Для решения проблемы с загрузкой PXE на сервере WDS отредактируем ключ реестра, в который внесём все варианты дубликатов UUID материнских плат:

Куст реестраHKEY_LOCAL_MACHINE
ВеткаSYSTEM\CurrentControlSet\Services\WDSServer\Providers\WDSPXE
КлючBannedGuids
Тип значенияREG_MULTI_SZ

Либо внесём необходимо значение с помощью командной строки:

wdsutil /set-server /bannedguidpolicy /add /GUID:A1BA321E-681C-458D-AF75-3F1D2A7D0FE0

После изменения реестра нужно перезапустить службу WDSServer:

net stop WDSServer & net start WDSServer

Для того, чтобы «обмануть» SCCM, выполним правку в хранимых процедур в базе данных.

Откроем SQL Server Management Studio, подключимся к базе данных SCCM и найдём хранимую процедуру NBS_LookupDevice (Programmability > Stored Procedures > dbo.NBS_LookupDevice). Найдём и закомментируем строку:

ON xref.MachineID = aux.ItemKey AND aux.SMBIOS_GUID0 = @SMBIOS_GUID

Ниже добавим строку:

ON xref.MachineID = aux.ItemKey AND aux.SMBIOS_GUID0 = @SMBIOS_GUID + ‘.’

Выполним указанный код (Execute)

В итоге фрагмент изменённого кода хранимой процедуры будет выглядеть так:

Затем найдём хранимую процедуру MP_GetClientIDFromSmbiosID (Programmability > Stored Procedures > dbo.MP_GetClientIDFromSmbiosID)

Найдём и закомментируем строку:

(M.SMBIOS_GUID0 = @vchSmbiosID)

Ниже добавим строку:

(M.SMBIOS_GUID0 = @vchSmbiosID + ‘.’)

Выполним указанный код (Execute)

В итоге фрагмент изменённого кода хранимой процедуры будет выглядеть так:

Таким образом мы «обманем» механизм проверки существования UUID в БД. То есть при проверке к оригинальному BIOS GUID компьютера в конце просто будет добавляться лишний символ — точка, а компьютера с таким UUID в БД разумеется обнаруживаться не будет, и процедура проверки будет считать, что компьютер уникален и будет разрешать запуск процесса развёртывания ОС. Стоит помнить, что после применений обновлений к Configuration Manager, возможно код хранимой процедуры будет возвращён в исходное состояние, и нам снова потребуется его корректировка.


Автор первичной редакции:
Виталий Якоб
Время публикации: 30.01.2017 14:30

Обсуждение

Ваш комментарий:
 

microsoft-windows/windows-10/enterprise-deployment-windows-10-with-sccm-2012-r2/mainboard-uuid-doubles.txt · Последние изменения: 24.02.2017 00:21 — Алексей Максимов