Поделиться через


Http <—> взаимоблокировка шифрования приводит к медленной загрузке и сбою запуска службы с поддержкой SSL

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

Исходный номер базы знаний: 2004121

Симптомы

Возможны следующие симптомы:

  • Windows Server зависает после загрузки при применении параметров компьютера или применении политики безопасности.
  • После завершения загрузки сервера пользователь, пытающийся войти в систему, может зависнуть при применении параметров пользователя.
  • Вы можете заметить, что службы, заданные для типа "Автоматический", могут не запускаться.

Некоторые службы, для которых задано значение "Automatic", могут запускаться без проблем, например:

  • Средство запуска процессов Dcom
  • Удаленный вызов процедур
  • Журнал событий
  • Клиент групповой политики
  • Plug and Play
  • DHCP-клиент
  • DNS-клиент
  • Планировщик заданий
  • Базовый механизм фильтрации
  • Служба рабочей станции
  • Netlogon

Другие службы, установленные для параметра "Автоматический", могут завершиться ошибкой, например:

  • Очередь печати принтера
  • Службы терминалов
  • Серверная служба
  • Удаленный реестр
  • WMI
  • Координатор распределенных транзакций
  • Все службы, связанные с приложениями

Попытка вручную запустить службы с типом запуска "Automatic" может привести к ошибке 1053, указывающей, что служба не ответила на запрос на запуск или контроль своевременно".

Причина

Проблемы, описанные в разделе симптомов, возникают из-за блокировки базы данных Service Control Manager (SCM). В результате блокировки ни одна из служб не может получить доступ к базе данных SCM для инициализации запросов на запуск службы. Чтобы убедиться, что компьютер Windows влияет на проблему, описанную в этой статье, выполните sc querylock команду из командной строки.

Выходные данные ниже указывают, что база данных SCM заблокирована:

QueryServiceLockstatus — успех
IsLocked: True
LockOwner: .\NT Service Control Manager
LockDuration: 1090 (секунды с момента приобретения)
В журналах событий нет дополнительных сведений за пределами диспетчера управления службами, указывающих время ожидания запуска службы. Основная причина является взаимоблокировкой между диспетчером управления службами и HTTP.SYS.

Решение

Чтобы обойти эту проблему, можно изменить поведение HTTP.SYS, чтобы сначала зависеть от другой службы. Для этого выполните следующие действия:

  1. Откройте редактор реестра.
  2. Перейдите к разделу HKLM\SYSTEM\CurrentControlSet\Services\HTTP и создайте следующее многостроовое значение: DependOnService.
  3. Дважды щелкните новую запись DependOnService .
  4. Введите CRYPTSVC в поле "Данные значения" и нажмите кнопку "ОК".
  5. Перезагрузите сервер.

Примечание.

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

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

Начиная с Windows Server 2008, Windows не ожидает загрузки Explorer.exe всех запуска автоматических служб. Службы могут иметь значение "Отложенный автоматический запуск", чтобы повысить производительность загрузки.