У меня есть Windows Server SBS 2011 Box, в котором возникают странные проблемы, связанные с Реестр поставщика услуг Windows Server. У ряда служб Windows Server возникли проблемы, и я проследил их до этой службы. Его зависимости запускаются и работают без ошибок, которые я вижу.
Это ошибка, которую я получаю, когда пытаюсь запустить службу:
Error 1067: The process terminated unexpectedly.
Ошибки программы просмотра событий перечислены ниже (2).
http://i.imgur.com/1vD6lsF.png
И ошибка .Net:
Source: .Net Runtime
Event ID: 1025
Application: ProviderRegistryService.exe
Framework Version: v4.0.30319
Description: The application requested process termination through System.Environment.FailFast(string message).
Message: Unhandled exception in OnStart: System.InvalidOperationException: Service ServiceRegistryProvider was not found on computer '.'. ---> System.ComponentModel.Win32Exception: The specified service does not exist as an installed service
--- End of inner exception stack trace ---
at System.ServiceProcess.ServiceController.GenerateNames()
at System.ServiceProcess.ServiceController.get_DisplayName()
at Microsoft.WindowsServerSolutions.Common.ServiceUtility.GetDisplayName(String serviceName)
at Microsoft.WindowsServerSolutions.Common.ProviderFramework.ProductConfigurator.LogServiceStartFailure(String serviceName, String info)
at Microsoft.WindowsServerSolutions.Common.ProviderFramework.ProviderRegistry.ServiceShell.OpenHost()
at Microsoft.WindowsServerSolutions.Common.Services.WssgServiceBase.OnStart(String[] args)
Stack:
at System.Environment.FailFast(System.String, System.Exception)
at Microsoft.WindowsServerSolutions.Common.Services.WssgServiceBase.OnStart(System.String[])
at System.ServiceProcess.ServiceBase.ServiceQueuedMainCallback(System.Object)
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
at System.Threading.ThreadPoolWorkQueue.Dispatch()
Через некоторое время исследовательская работа Я нашел несколько похожих случаев, я имел дело с портом, используемым службой, который я нигде не могу найти в списке, включая файл конфигурации для службы.
Недавно я запустил сканирование SFC для файла и для всего сервера, которое не вернуло ошибок. Я ищу, нужно ли мне попытаться переустановить службу или это может быть ошибка .Net и т. Д. Любая помощь будет принята с благодарностью.
У меня тоже была эта проблема, однако я нашел TechNet поток это действительно помогло мне найти решение этой проблемы. По сути, проблема заключалась в том, что сертификат идентификации сервера каким-то образом был удален из хранилища сертификатов, и его необходимо было восстановить. Отсутствие сертификата приводит к сбою службы «Реестр поставщиков услуг Windows Server», что, в свою очередь, приводит к сбою множества других зависимых служб.
Я повторно опубликую то же самое, что и в ветке TechNet ниже. Надеюсь, это кому-то поможет!
У меня была такая же проблема! Большое спасибо, Роберт, за то, что разместил ссылку на этот сценарий! Это действительно потрясающий сценарий Powershell.
У меня были все те же ошибки, о которых упоминал AK772, но я решил увеличить другую проблему, указанную в сценарии. Когда я запустил шаг «Тестирование инфраструктуры ЦС», он обнаружил несколько ошибок. Когда я посмотрел, что там делает сценарий, он сравнивал отпечаток сертификата сервера в реестре (HKLM: \ Software \ Microsoft \ Windows Server \ Identity) с личными сертификатами (личные сертификаты в оснастке сертификатов с использованием MMC). Когда я просмотрел их по отдельности, я понял, что отпечатка пальца в реестре в моем хранилище сертификатов не существует. Я не знаю, как это могло случиться!
Однако оттуда я изменил критерии поиска в Google и нашел следующую отличную статью: http://titlerequired.com/2013/04/29/windows-server-2012-essentials-an-error-prevented-the-dashboard-from-opening/
Это рассказало больше об этой ошибке и показало, как восстановить удостоверение сертификата в реестре. Это меня полностью спасло! Выполнив описанные им шаги, даже несмотря на то, что к концу у меня возникла ошибка тайм-аута, я увидел, что отпечаток сертификата изменился в реестре и теперь существует в моем личном хранилище сертификатов.
Как только я это увидел, я попытался войти в службы и вручную запустить остановленную службу «Реестр поставщиков услуг Windows Server». Конечно же, все заработало, на этот раз без ошибок. Наконец, я перезапустил сервер, чтобы все другие зависимые службы вернулись к работе, и повторно запустил связанный сценарий выше, и все было идеально.