Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

Event ID 70002 Windows Server, AD и Роли

Event ID 70002 SCM: сбой остановки службы Windows — решение

Обновлено: 28.08.2026 · Официальная документация ↗

Симптомы сбоя остановки службы (Event ID 70002)

В журнале System фиксируется ошибка: Event ID 70002: The Service Control Manager encountered an error while stopping the [Имя_Службы] service. The service did not respond to the stop control request от источника Service Control Manager.

СимптомПроявление
Служба зависла в статусе «Stopping» (Stop_Pending)Кнопки «Пуск/Стоп» в оснастке services.msc заблокированы серым цветом
Невозможность перезагрузить приложениеПроцесс службы продолжает блокировать сетевые порты и дескрипторы файлов
Задержка выключения сервераСервер зависает на экране «Завершение работы служб...» на 10–15 минут

Пошаговое завершение зависшей службы (Event ID 70002)

  1. Найдите точный идентификатор процесса (PID) зависшей службы:
# Поиск PID зависшей службы через утилиту sc:
$serviceName = "ИмяСлужбы"
sc.exe queryex $serviceName

# Либо через PowerShell:
$pidToKill = (Get-CimInstance Win32_Service -Filter "Name = '$serviceName'").ProcessId
Write-Host "PID зависшей службы: $pidToKill"
  1. Принудительно завершите зависший процесс по PID:
# Принудительное уничтожение процесса (Kill):
if ($pidToKill -gt 0) {
    Stop-Process -Id $pidToKill -Force
    Write-Host "Процесс $pidToKill успешно завершен"
} else {
    taskkill /F /FI "SERVICES eq $serviceName"
}
  1. Сократите системный таймаут ожидания завершения служб при выключении ПК:
# Уменьшение времени ожидания завершения зависших служб до 5 секунд (5000 мс):
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control" -Name "WaitToKillServiceTimeout" -Value "5000" -Force

Внимание: Не завершайте принудительно службы баз данных (MS SQL, Oracle, PostgreSQL) во время активных транзакций записи, если это не вызвано полной блокировкой ввода-вывода — это может привести к длительному восстановлению БД из логов (Crash Recovery).

💡 Практика специалистов: Если служба зависает при каждой плановой остановке, проверьте сетевые таймауты к внешним ресурсам. Чаще всего служба 'намертво висит', пытаясь закрыть соединение с недоступным сетевым сервером или СХД.

Частые вопросы (FAQ)

Почему служба переходит в статус 'Stopping' и не останавливается?

Служба получила сигнал остановки от ОС, но зависла в бесконечном цикле ожидания освобождения внешнего ресурса (файла, сокета, дескриптора или фонового потока).

Как перезапустить зависшую службу без перезагрузки всего сервера?

Найдите ее PID командой sc queryex <имя_службы>, принудительно убейте процесс командой taskkill /F /PID <PID>, после чего запустите службу заново через Start-Service.

Что делает параметр WaitToKillServiceTimeout?

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

Какое значение WaitToKillServiceTimeout установлено по умолчанию?

По умолчанию в Windows Server установлено значение 5000 мс (5 секунд), в старых версиях — до 20000 мс (20 секунд).

Полезные материалы
Рекомендуем