Текущее число KMS не увеличивается при добавлении в сеть новых клиентских компьютеров под управлением Windows Vista или Windows 7.

В этой статье показано, как устранить проблему, из-за которой количество клиентов на компьютере с сервером управления ключами (KMS) не увеличивается при добавлении в сеть новых клиентских компьютеров под управлением Windows Vista.

Применяется к: Windows 7 с пакетом обновления 1 (SP1)
Исходный номер базы знаний: 929829

Симптомы

При выполнении сценария Slmgr.vbs на компьютере с сервером управления ключами (KMS) убедитесь, что количество клиентских компьютеров не увеличивается при добавлении в сеть новых клиентских компьютеров под управлением Windows. Кроме того, в журнале событий службы управления ключами для каждого нового клиентского компьютера Под управлением Windows, добавляемого в сеть, может отображаться следующее событие.

При выполнении скрипта Slmgr.vbs вместе с аргументом -dli сведения о количестве клиентских компьютеров не увеличиваются должным образом. В следующем случае, зарегистрированном в журнале событий службы управления ключами, текущее число остается прежним.

Причина

Эта проблема может возникать, если клиентские компьютеры под управлением Windows, добавляемые в сеть, имеют идентичные идентификаторы клиентских компьютеров KMS (CMID). Текущее число счетчика увеличивается на компьютере KMS, если клиентские компьютеры имеют разные CMID. Два или более компьютеров могут иметь одинаковые CMID в любом из следующих сценариев:

  • Пользовательский образ Windows, используемый для установки клиентского компьютера, создается, даже если средство подготовки системы (Sysprep.exe) не запускается вместе с параметром /generalize.
  • Пользовательский образ Windows создается вместе с параметром /generalize. Однако вы указываете <параметр SkipRearm> в файле Unattended.xml.

Чтобы убедиться, что клиентские компьютеры имеют идентичные CMID, выполните следующие действия.

  1. На одном из клиентских компьютеров под управлением Windows нажмите кнопку Пуск, выберите пункт Программы, Стандартные, щелкните правой кнопкой мыши командную строку и выберите команду Запуск от имени администратора. Если вам будет предложено ввести пароль администратора или подтверждение, введите пароль или нажмите кнопку Разрешить.

  2. В командной строке введите следующую команду и нажмите клавишу ВВОД: cscript c:\windows\system32\slmgr.vbs -dli

  3. Изучите следующие результаты и обратите внимание на CMID.

  4. Повторите шаги 1–4 на втором клиентском компьютере под управлением Windows. Убедитесь, что CMID второго клиентского компьютера идентичен CMID первого компьютера.

Решение

Рекомендуется перестроить базовый образ, используемый для развертывания затронутых компьютеров, как только вы определите, имеют ли они идентичные CMID.

Обходной путь

Обходной путь действителен, только если параметр /generalize использовался в образе, который использовался для установки клиентов под управлением Windows. Этот параметр является обязательным при развертывании нескольких образов. Чтобы определить, использовался ли в образе параметр /generalize, выполните следующие действия.

  1. На одном из затронутых компьютеров нажмите кнопку Пуск и введите C:\Windows\System32\sysprep\Panther\setupact.log.

  2. Изучите строки "SYSPRP ParseCommands: Found", как показано в следующем примере файла журнала:

    Сведения [0x0f004e] Журнал SYSPRP, инициализированный SysPrep в C:\Windows\System32\sysprep\Panther

    Info [0x0f0054] SYSPRP ValidateUser:User has required privileges to sysprep machine
    Сведения [0x0f0056] SysPRP ValidateVersion:OS version is okay
    Сведения [0x0f005c] Экран SYSPRP:Успешно отключена заставка для sysprep
    Сведения [0x0f007e] SYSPRP FCreateTagFile:Tag file C:\Windows\System32\sysprep\Sysprep_succeeded.tag еще не существует, удалять ничего не нужно.
    Сведения [0x0f005f] SysPRP ParseCommands:Found supported command line option 'UNATTEND'
    Сведения [0x0f005f] SysPRP ParseCommands:Found supported command line option 'OOBE'
    Сведения [0x0f005f] SysPRP ParseCommands:Found supported command line option 'SHUTDOWN'
    Info [0x0f005f] SYSPRP ParseCommands:Found supported command line option 'GENERALIZE'

  3. Если параметр /generalize присутствует, убедитесь, что этот параметр использовался на компьютере, на который был создан базовый образ.

  4. Если был использован параметр /generalize и у вас есть компьютеры с идентичными CMID, выполните следующие действия, чтобы перенастроить затронутые компьютеры и перестроить базовый образ. Убедитесь, что параметр <SkipRearm> не используется:

    1. На одном из клиентских компьютеров под управлением Windows нажмите кнопку Пуск, выберите Пункты Программы, Стандартные, Щелкните правой кнопкой мыши командную строку и выберите команду Запуск от имени администратора.

      Если вам будет предложено ввести пароль администратора или подтверждение, введите пароль или нажмите кнопку Разрешить.

    2. В командной строке введите следующую команду и нажмите клавишу ВВОД: cscript c:\windows\system32\slmgr.vbs -rearm

    3. Перезагрузите компьютер.

Если базовый образ не был создан с помощью Sysprep с параметром /generalize, необходимо перестроить базовый образ, а затем переустановить Windows на клиентах. Если при перестроении базового образа используется файл Unattended.xml, убедитесь, что <параметр SkipRearm> не используется. Дополнительные сведения о параметре <SkipRearm> см. в документации по пакет автоматической установки Windows (Windows AIK).

Дополнительная информация

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

  • Запустите Sysprep вместе с параметром /generalize на компьютере, который используется для сборки пользовательского образа Windows.
  • Принудительно выполните процесс перезахоружки, запустив скрипт Slmgr.vbs в окне командной строки с повышенными привилегиями. Например, введите: cscript c:\windows\system32\slmgr.vbs -rearm

Если процесс перезапустить не удалось, так как Sysprep был запущен вместе с параметром /generalize или вы использовали <параметр SkipRearm>1</SkipRearm> в файле Unattended.xml, клиентские компьютеры могут иметь идентичные CMID. Таким образом, количество данных о количестве компьютеров не увеличивается должным образом. Параметр /generalize является обязательным при развертывании нескольких образов. Параметр <SkipRearm> не следует использовать в автоматическом файле при развертывании компьютеров в рабочей среде. Поэтому в обоих случаях рекомендуется перестроить базовый образ.

Сбор данных

Если вам нужна помощь службы поддержки Microsoft, мы рекомендуем собирать информацию путем выполнения действий, описанных в разделе Сбор информации с помощью TSS для решения проблем, связанных с развертыванием.