Войти

Показать полную графическую версию : KMS активация через GPO


diga
14-02-2012, 00:40
Всем привет.
Помогите накидать скрипт для активации клиентских машин на корпоративном KMS.
Проблема такова:
Развёртывание Windows производилось через WDS, забыли указать ключ установки. В дальнейшем это привело к необходимости через GPO установить дянный ключ.
Попробовал задать логон скрипт для компьютера:
cscript c:\windows\system32\slmgr.vbs
с параметрами
-ipk FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4 -ato

Что собственно ни к чему не привело. В дальнейшем, как выяснилось необходимы более высокие привилегии пользователя.
Воспользовавшись поиском нарыл на вот такой материал:
Включение активации при обычном доступе

По умолчанию активация требует наличия прав администратора. Однако в тех случаях, когда пользователи не имеют прав доступа локального администратора и автоматическая активация не может быть выполнена в течение первых 30 дней льготного периода, клиенты могут предоставить право выполнения этих операций пользователям, имеющим право обычного доступа. Чтобы разрешить пользователям, имеющим право обычного доступа, устанавливать ключи продукта, выполнять активацию и переоснащение компьютеров, значение записи реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SL\UserOperations (REG_DWORD) нужно установить равным 1. После включения этого параметра реестра все запросы установки ключей продукта, активации и переоснащения должны выполняться с помощью сценария Slmgr.vbs.
http://technet.microsoft.com/ru-ru/library/bb490214.aspx

Но и это не помогло.

Kazun
14-02-2012, 01:56
1) Клиенты могут найти KMS? Если нет ,то укажите вручную:
cscript slmgr.vbs /skms <value>:<port>

2) И попробуйте каждую команду в отдельной строке.
cscript slmgr.vbs /ipk FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4
cscript slmgr.vbs /ato

diga
14-02-2012, 14:41
Kazun,
C:\Users\test>cscript c:\windows\system32\slmgr.vbs /ipk FJ82H-XT6CR-J8D7P-XQJJ2
-GPDD4
Сервер сценариев Windows (Microsoft R) версия 5.8
c Корпорация Майкрософт (Microsoft Corp.), 1996-2001. Все права защищены.

Ошибка: 0xC004F025 Отказано в доступе: для выполняемого действия требуется более
высокий уровень привилегий

KMS опубликован в DNS, исключение для порта 1688 создано. Клиенты на которых руками всё вбивалось - активируются.
Уже не знаю куда копать. Чес слово.
По логике вещей всё должно работать, т.к. через AD я задаю параметр реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SL\UserOperations
Затем задаю логон скрипт на компьютер
cscript c:\windows\system32\slmgr.vbs
с параметрами
-ipk FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4

Petya V4sechkin
14-02-2012, 18:38
diga, попробуйте VAMT (http://www.microsoft.com/download/en/details.aspx?id=11936) вместо этого.

sattva
01-04-2013, 22:57
Использую такой скрипт для активации Windows 7/8/2008/2012
посредством локального KMS
==================================================
@echo off & color 1F
setlocal ENABLEDELAYEDEXPANSION
for /F «usebackq tokens=4 delims= » %%I in (`%SYSTEMROOT%\system32\chcp.com`) do set ACTCODEPAGE=%%I
«%SYSTEMROOT%\system32\chcp.com» %ACTCODEPAGE% >nul

«%SYSTEMROOT%\system32\cscript.exe» «%SYSTEMROOT%\system32\slmgr.vbs» -skms kmshost.xxxxxxxxxxx.xxxxx.com.ua:1688
«%SYSTEMROOT%\system32\sc.exe» start w32time >nul
«%SYSTEMROOT%\system32\timeout.exe» /T 2 /NOBREAK >nul
for /F «usebackq delims=» %%I in (`%SYSTEMROOT%\system32\sc.exe query w32time ^| findstr /R «STATE»`) do set W32TIMESTATE=%%I
for /F «usebackq tokens=4 delims= » %%I in (‘%W32TIMESTATE%’) do set W32TIMESTATE=%%I
«%SYSTEMROOT%\system32\w32tm.exe» /resync
«%SYSTEMROOT%\system32\cscript.exe» «%SYSTEMROOT%\system32\slmgr.vbs» -ato
«%SYSTEMROOT%\system32\cscript.exe» «%SYSTEMROOT%\system32\slmgr.vbs» -dli
«%SYSTEMROOT%\system32\chcp.com» %ACTCODEPAGE% >nul
=========================================================
скрип выполняется через групповые политики в качестве сценария автозагрузки. Хотелось бы добавить условия проверки активации Windows, в начале скрипта, чтобы он повторно каждый раз при загрузке Windows не отрабатывал заново, так как на отработку скрипта будет уходит лишнее время, что увеличивает время загрузки ОС.

Vadikan
01-04-2013, 23:39
sattva, зачем дублировать вопрос мне в блоге? Тем более, что первая ссылка в гугле дает готовую функцию для проверки статуса http://social.technet.microsoft.com/wiki/contents/articles/5675.determine-windows-activation-status-with-powershell.aspx




© OSzone.net 2001-2012