Why are My Services Not Starting When Rebooting?

by | Nov 29, 2017 | Infrastructure | 0 comments

Server reboots are often needed when installing updates or patches, doing maintenance, or troubleshooting.  But there can be unexpected consequences of this action…

Are services timing out when you reboot your servers?

Do you have to manually start services that are set to Automatic Startup or Automatic (Delayed), after the server has started?

Are services failing to start that cause other services depending on them to fail?

There could be many reasons for a service timeout when a server starts: slow or busy storage, virtual machines on an overloaded Hypervisor, low-end cloud-based servers, etc.  What can you do about this?

Increase the “ServicesPipeTimeout”

The default timeout is 30 seconds. You can easily increase the timeout value with a registry setting to give more time for the services to start. Try first increasing the timeout to 60 seconds. Please note: The registry value is in milliseconds, use a decimal.

  • Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
  • Value: ServicesPipeTimeout
  • Data: DWORD= 60000

An Example to Illustrate

To help illustrate, here is an example of a server running the RDS Broker role and RDS Session Host role where services failed to start upon a reboot. We had to connect the Services.msc to the server and manually start them to get the server to accept RDS connections.

  • A timeout was reached (30000 milliseconds) while waiting for the Windows Internal Database service to connect. The Windows Internal Database service failed to start due to the following error: The service did not respond to the start or control request in a timely fashion.
  • The RemoteApp and Desktop Connection Management service depends on the Windows Internal Database service, which failed to start because of the following error: The service did not respond to the start or control request in a timely fashion.
  • We manually started the RemoteApp and Desktop Connection Management service.

After increasing the ServicesPipeTimeout to 60 seconds, the server will reboot normally and all services now start fine on their own. Simply increase the ServicesPipeTimeout entry and reboot with confidence.

Still having issues with services or need more information? Just email us at info@peters.com. We are happy to help.