Windows server не запускаются службы windows
У меня Windows 10 построен 1511 со всеми обновлениями.
Сегодня я заметил странное поведение:
после перезагрузки системы некоторые службы с типом запуска «Автоматически» не запускаются автоматически.
Но я могу запустить их вручную, и после этого все в порядке. Но если я сделаю перезагрузку системы, проблема появится снова.
Если я запускаю службу вручную и после завершения работы все в порядке, когда я снова включаю компьютер. Таким образом, сервисы запускаются автоматически, как и должно быть. Проблема появляется только при перезагрузке Windows. После перезапуска эти службы не запускаются автоматически.
Эта проблема возникает только для некоторых служб, которые связаны с приложениями (не те, которые являются системными службами). Эти услуги не зависят от других услуг.
Что я могу сделать ?
Может быть, вы могли бы привести примеры таких служб, которые не запускаются. Трудно догадаться, в чем проблема, без каких-либо подробностей. Если тебе от этого становится лучше, ты не единственный. У меня точно такая же проблема. Услуги являются 32-битными. Пользовательское программное обеспечение установлено довольно давно. Итак, настройка WOW64 включена, включена. Я могу запустить службы вручную, но с момента обновления с Windows 7 до Windows 10 ОС не предпринимает никаких попыток запустить службы. Их файлы трассировки ничего не показывают, а журнал событий не показывает ни попыток их запуска, ни каких-либо проблем с ними. Это очень расстраивает. Автоматическая задержка - паршивая опция, но я думаю, что пока это все .Единственное решение, которое работает на данный момент, - это изменить тип запуска этих сервисов с автоматического на задержанный. Я не знаю, является ли это лучшим решением, но пока это единственное, что работает.
Если вас устраивает regedit, я обнаружил, что, пока у службы есть ключ DelayedAutostart (DWORD), он будет запускаться. Поэтому я добавил это, но установил значение 0, так как я не хотел, чтобы оно было отложено. Пример: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ <yourServiceName> \ DelayedAutostartМой предыдущий ответ не решил нашу проблему. В конце концов, мы исправили это, установив более длительное время для служб. Попробуйте это решение:
Перейдите в Пуск> Выполнить> и введите regedit
Перейдите к: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control
Выбрав управляющую папку, щелкните правой кнопкой мыши на панели справа и выберите новое значение DWORD.
Назовите новый DWORD: ServicesPipeTimeout
Щелкните правой кнопкой мыши ServicesPipeTimeout и выберите команду «Изменить».
Нажмите «Десятичная дробь», введите «180000» и нажмите «ОК».
Диспетчер управления службами Microsoft Windows контролирует состояние (то есть запущен, остановлен, приостановлен и т. Д.) Всех установленных служб Windows. По умолчанию диспетчер управления службами ожидает ответа службы в течение 30 000 миллисекунд (30 секунд). Тем не менее, определенные конфигурации, технические ограничения или проблемы с производительностью могут привести к тому, что запуск службы и подготовка отчета о работе в диспетчере управления службами займет более 30 секунд.
Путем редактирования или создания значения DWORD ServicesPipeTimeout период ожидания Service Control Manager может быть переопределен, что дает службе больше времени для запуска и подготовки отчета для службы.
Ошибка сервера отчетов 1053: служба не ответила на запрос запуска или управления своевременно
Как завершить процесс службы Windows, которая зависла в статусе stopping (остановка) или starting (запуск)? Большинство администраторов Windows встречалось с ситуациями, когда при попытке остановить (перезапустить) службу из графического интерфейса консоли управления службами ( Services.msc ), служба зависает намертво и висит в статусе Stopping (или Starting). При этом все кнопки управления службой в консоли (Start, Stop, Restart) становятся недоступными (серыми). Самый простой способ – перезагрузить сервер, но это не всегда допустимо. Рассмотрим альтернативные способы, позволяющие принудительно завершить зависшую службу или процесс без необходимости перезагрузки Windows.
Как остановить зависшую службу Windows из командной строки?
Самый простой способ завершить зависшую служу – воспользоваться утилитой taskkill. В первую очередь нужно определить PID (идентификатор процесса) нашей службы. В качестве примера возьмем службу Windows Update. Ее системное имя wuauserv (имя можно посмотреть в свойствах службы в консоли services.msc ).
Очень часто можно встретится с зависанием службы Windows Modules Installer при перезагрузке сервера, особенно после установки обновлений на Windows Server 2012 R2 / 2016. Важно. Будьте внимательными. Принудительная отставка процесса критичной службы Windows может привести к BSOD или перезагрузке операционной системы.Отройте командную строку с правами правами администратора (иначе будет ошибка access denied) и выполите команду:
sc queryex wuauserv
В данном случае PID процесса — 9186 .
Чтобы принудительно завершить зависший процесс с PID 9186 воспользуйтесь утилитой taskkill:
taskkill /PID 9168 /F
Данная команда принудительно завершит процесс службы. Теперь вы можете запустите службу командой sc start servicename или через консоль управления службами (или совсем удалить эту службу, если она не нужна).
«Выстрел в голову» зависшей службы можно выполнить и более элегантно, не выполняя ручное определение PID процесса. У утилиты taskkill есть параметр /FI, позволяющий использовать фильтр для выбора необходимых служб или процессов. Вы можете остановить конкретную службу командой:
TASKKILL /F /FI “SERVICES eq wuauserv”
Или можно вообще не указывать имя, службы, завершив все сервисы в зависшем состоянии с помощью команды:
taskkill /F /FI “status eq not responding”
После этого служба, зависшая в статусе Stopping должна остановиться.
Также вы можете использовать утилиту taskkill для принудительной остановки зависших служб на удаленном компьютере:
TASKKILL /S CORPFS01 /F /FI “SERVICES eq wuauserv”
Принудительное завершение зависшей службы в PowerShell
Также вы можете использовать PowerShell для принудительной остановки службы. С помощью следующей команды можно получить список служб, находящихся в состоянии Stopping:
Get-WmiObject -Class win32_service | Where-Object
Завершить процесс для всех найденных служб поможет командлет Stop-Process. Следующий PowerShell скрипт завершит все процессы зависших служб в Windows:
$Services = Get-WmiObject -Class win32_service -Filter "state = 'stop pending'"
if ($Services) foreach ($service in $Services) try Stop-Process -Id $service.processid -Force -PassThru -ErrorAction Stop
>
catch Write-Warning -Message " Error. Error details: $_.Exception.Message"
>
>
>
else Write-Output "No services with 'Stopping'.status"
>
$Services = Get-CimInstance -Class win32_service | where-Object state -eq 'stop pending'
Анализ цепочки ожидания зависшего приложения с помощью ResMon
Вы можете определить процесс, из-за которого зависла служба с помощью монитора ресурсов ( resmon.exe ).
- В окне Монитора ресурсов перейдите на вкладку ЦП (CPU) и найдите процесс зависшей службы;
- Выберите пункт Анализ цепочки ожидания (Analyze Wait Chain);
- В новом окне скорее всего вы увидите, что вам процесс ожидает другой процесс. Завершите его. Если выполняется ожидание системного процесса svchost.exe, завершать его не нужно. Попробуйте проанализировать цепочку ожидания для этого процесса. Найдите PID процесса, которого ожидает ваш svchost.exe и завершите его
Process Explorer: Завершение зависшего процесса из-под SYSTEM
Некоторые процессы, запущенные из-под SYSTEM, не может завершить даже локальный администратора сервера. Дело в том, что у него просто может не быть прав на некоторые процессы или службы. Чтобы завершить такие процесс (службы), вам необходимо предоставить локальной группе Administrators права на службу (процесс), а потом завершить их. Для этого нам понадобятся две утилиты: psexec.exe и ProcessExplorer (доступны на сайте Microsoft).
Обратите внимание, что права на службу и ее процесс выдались временно, до ее перезапуска. Для предоставления постоянных прав на службы познакомьтесь со статьей Права на службы в Windows.Таймаут, в течении которого Service Control Manager ждет ожидания запуска или остановки службы можно изменить через параметр реестра ServicesPipeTimeout. Если служба не запускается в течении указанного таймаута, Windows записывает ошибку в Event Log (Event ID: 7000, 7009, 7011, A timeout was reached 30000 milliseconds). Вы можете увеличить этот таймаут, например до 60 секунд:
reg add HKLM\SYSTEM\CurrentControlSet\Control /v ServicesPipeTimeout /t REG_SZ /d 600000 /f
Это бывает полезным при запуске/остановки тяжелых служб, которые не успевают завершить все процессы быстро (например, MS SQL Server).
Описание ошибки
Не так давно я установил службу WDS на Windows Server 2019. После инсталляции я сразу же поймал ошибку 0xc0000098, которая не давала мне загрузить установочный образ. Я ее так же устранил и думал, что на это мои навыки траблшутинга можно уже отложить, но не тут то было. При очередном использовании служб развертывания windows, я словил ситуацию, что служба WDS перестала запускаться и выдавала вот такие ошибки:
Обратите внимание, что на имени сервера стоит красный квадрат, означающий, что служба остановлена.
Устраняем ошибка "Служба не ответила на запрос своевременно"
Как я и писал выше в оснастке "Службы развертывания Windows" служба не запускалась. Первым делом пробуем выполнить вот такие действия, нажмите одновременно клавиши Win и R и введите services.msc, чтобы перейти в оснастку службы.
Находим тут службу "Сервер служб развертывания Windows", заходим в ее свойства и пробуем ее запустить, в моем случае я получил ошибку:
Не удалось запустить службу. Сервер служб развертывания Windows на Локальный компьютер. Подробности содержатся в журнале системных событий. Если эта служба разработана не в Майкрософт, обратитесь к разработчику службы, и сообщите специфический для этой службы код ошибка 1346Эта ошибка похожа на случай, когда служба не ответила на запрос с кодом 1053. Там одно из решений было, запуск зависимых служб, тут я советую посмотреть их в первую очередь.
Для этого перейдите на вкладку "Зависимости" и посмотрите, что нужно для того, чтобы запустился WDS. Тут у вас будут:
- Драйвер дополнительных функций для Windows
- Драйвер протокола TCP/IP
- Сервер
- Диспетчер учетных записей безопасности
- Драйвер сервера Server SMB 2.xxx
- srvnet
Так, что проверьте, что все находится в статусе запуска.
Попробовал еще раз запустить службу, я получил уже другую ошибку:
Не удалось запустить службу Сервер развертывания Windows на Локальный компьютер. Ошибка 1297: Права, необходимые для правильной работы, не существует в конфигурации учетной записи службы. Для просмотра конфигурации службы и учетной записи можно использовать оснастку консоли управления (services.msc) и оснастку локальных параметров безопасности (secpol.msc)Откроем логи Windows и посмотрим, чем они нам могут помочь. Первое, что я обнаружил, это была ошибка 257.
При попытке запустить сервер служб развертывания Windows произошла ошибка.Сведения об ошибке: 0x5 (an error occured while trying to start the windows seployment services server.
error information: 0x5)
Далее увидел ошибку 1536.
Ошибка при попытке инициализировать диспетчер многоадресной рассылки. Сервер служб развертывания Windows завершит работу.Сведения об ошибке: 0x5
В первую очередь откройте оснастку Active Directory - Пользователи и компьютеры в режиме дополнительных компонентов.
Далее отыщите объект компьютера WDS-сервера, откройте его свойства и перейдите на вкладку "Безопасность". Найдите в списке ACL группу SELF и убедитесь, что у нее выставлены определенные права:
- Создать все дочерние объекты (Create All Child Objects)
- Удалить все дочерние объекты (Delete All Child Objects)
- Удостоверенная запись на узел с DNS-именем (Validated write to DNS host name)
- Удостоверенная запись на узел с именем субъекта-SPN (Validated write to service principal name)
- Чтение: личные сведения (Read Personal Information)
- Запись: личные сведения (Write Personal Information)
Что можно сделать еще, чтобы служба запустилась и исчезло предупреждение "Служба не ответила на запрос своевременно". Вам необходимо удостовериться, что у вас есть права на папку RemoteInstall. По умолчанию они идут такие:
- Группа прошедшие проверку - имеют права на чтение
- СИСТЕМА - имеет полные права
- Администраторы - имеют полные права
- WDSServer - имеет полные права
Если с правами все хорошо, то можно попробовать переинициализировать ваш WDS сервер. Для этого откройте командную строку с правами администратора. Открыть через командную строку утилиту wdsutil.
wdsutil /uninitialize-server - данная команда скажет, что WDS больше не инициализированЕсли получаете "На сервере уже была выполнена первоначальная установка служб развертывания Windows", то служба уже пронициализировалась.
Как вариант, можно ее пронициализировать в режиме изолированного сервера
Еще можете попробовать выставить в свойствах служб развертывания на вкладке "Дополнительно", явно заданный контроллер домена и сервер глобального каталога.
Как удалить WDS через Power Shell
Если вам все это не помогло и у вас до сих пор не запускается служба WDS и вы видите событие с кодом ошибки ID 257, то переустановите данную роль. Откройте оболочку Power Shell и введите команду:
Не удалось запустить дочернюю службу — распространенные варианты ошибки 1068
Для того, чтобы открыть «Службы» в Windows 10, 8 и Windows 7, нажмите клавиши Win+R (где Win — клавиша с эмблемой ОС) и введите services.msc после чего нажмите Enter. Откроется окно со списком служб и их состоянием.
Для изменения параметров любой из служб, просто дважды кликните по ней, в следующем окне вы сможете изменить тип запуска (например, включить «Автоматически») и запустить или остановить службу. Если опция «Запустить» не доступна, то сначала нужно изменить тип запуска на «Вручную» или «Автоматически», применить настройки и уже потом запускать службу (но она может не запуститься и в этом случае, если зависима еще от каких-то отключенных в настоящий момент служб).
Если проблема не была решена сразу (или запускать службы не получается), то после изменения типа запуска всех необходимых служб и сохранения настроек попробуйте также перезагрузить компьютер.
Ошибка 1068 службы Windows Audio
Если запустить дочернюю службу не удалось при запуске службы Windows Audio, проверьте состояние следующих служб:
- Питание (тип запуска по умолчанию — Автоматически)
- Планировщик классов мультимедиа (данная служба может отсутствовать в списке, тогда для вашей ОС неприменимо, пропустите).
- Удаленный вызов процедур RPC (по умолчанию — Автоматически).
- Средство построения конечных точек Windows Audio (тип запуска — Автоматически).
После запуска указанных служб и возвращения типа запуска по умолчанию, служба Windows Audio должна перестать выдавать указанную ошибку.
Не удалось запустить дочернюю службу при действиях с сетевыми подключениями
В описываемой ситуации проверьте работу следующих служб:
- Диспетчер подключений Windows (Автоматически)
- Удаленный вызов процедур RPC (Автоматически)
- Служба автонастройки WLAN (Автоматически)
- Автонастройка WWAN (Вручную, для беспроводных подключений и Интернета по мобильной сети).
- Служба шлюза уровня приложения (Вручную)
- Служба сведений о подключенных сетях (Автоматически)
- Диспетчер подключений удаленного доступа (по умолчанию – вручную)
- Диспетчер автоматических подключений удаленного доступа (Вручную)
- Служба SSTP (Вручную)
- Маршрутизация и удаленный доступ (по умолчанию бывает отключена, но попробуйте запустить, может помочь в исправлении ошибки).
- Диспетчер удостоверений сетевых участников (Вручную)
- Протокол PNRP (Вручную)
- Телефония (Вручную)
- Plug and Play (Вручную)
В качестве отдельного действия при неполадках с сетевыми службами при подключении к Интернету (ошибка 1068 и ошибка 711 при непосредственно подключении в Windows 7) можно попробовать следующее:
- Остановите службу «Диспетчера удостоверений сетевых участников» (не меняйте тип запуска).
- В папке C:\ Windows\ serviceProfiles\ LocalService\ AppData\ Roaming\ PeerNetworking удалите файл idstore.sst при его наличии.
После этого перезагрузите компьютер.
Поиск необходимых для исправления ошибки 1068 служб вручную на примере диспетчера печати и брандмауэра
Этот способ должен подойти для большинства случаев появления проблемы в Windows 10 — Windows 7: и для ошибок брандмауэра, Hamachi, диспетчера печати и для других, менее часто встречающихся вариантов.
После этого перейдите на вкладку «Зависимости». Например, для службы Диспетчер печати мы увидим, что требуется «Удаленный вызов процедур», а для брандмауэра требуется «Служба базовой фильтрации», для которой, в свою очередь, тот же «Удаленный вызов процедур».
Когда необходимые службы стали известны, пробуем включить их. Если тип запуска по умолчанию неизвестен — пробуем «Автоматически» с последующей перезагрузкой компьютера.
Примечание: такие службы, как «Питание» и «Plug and Play» не указываются в зависимостях, но могут быть критичными для работы, всегда обращайте на них внимание при возникновении ошибок запуска служб.
Ну и, если ни один из вариантов не помогает, имеет смысл попробовать точки восстановления (если есть) или другие способы восстановления системы, прежде чем прибегать к переустановке ОС. Тут могут помочь материалы со страницы Восстановление Windows 10 (многие из них подойдут для Windows 7 и 8).
Читайте также: