cygrunsrv does not start cygsshd at boot

Brian Inglis
Wed Jan 22 22:08:00 GMT 2020

On 2020-01-22 11:18, ASSI wrote:
> Andrew J. Schorr writes:
>>> Try to set the service to "delayed start" instead and see if that helps.
>> Thanks for the suggestion; that seems to fix the issue. Is this a known
>> problem due to some updates to Windows 10 and/or Cygwin? I have not had
>> this problem in the past.
> Win10 is better at starting fast (including parallelization of startup
> across the available cores) and just the fact that TCP/IP is up seems
> not enough for sshd to function correctly.

I've used dnscache for network service dependencies (and cygserver and syslog-ng
for other Cygwin services) with delayed start and preshutdown (cygrunsrv -O,
Where previous usage was cygrunsrv -t, --type manual is now called demand
service startup type.

You can set service startup type using:

$ sc config cygsshd start= boot|system|auto|demand|disabled|delayed-auto
# option flag requires = and the value must be a separate argument

and check them using:

$ sc query cygsshd

        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 4  RUNNING
                                (STOPPABLE, NOT_PAUSABLE, ACCEPTS_PRESHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0
$ sc qc cygsshd
[SC] QueryServiceConfig SUCCESS

        TYPE               : 10  WIN32_OWN_PROCESS
        START_TYPE         : 3   DEMAND_START
        ERROR_CONTROL      : 1   NORMAL
        BINARY_PATH_NAME   : C:\...\bin\cygrunsrv.exe
        LOAD_ORDER_GROUP   :
        TAG                : 0
        DISPLAY_NAME       : CYGWIN sshd
        DEPENDENCIES       : dnscache
                           : cygserver
                           : syslog-ng
        SERVICE_START_NAME : LocalSystem

$ regtool -pv list
Start (REG_DWORD) = 0x00000002 (2)		# [auto]
DelayedAutostart (REG_DWORD) = 0x00000001 (1)	# [delayed]
$ regtool -pv list
Preshutdown (REG_DWORD) = 0x00000001 (1)	# [preshutdown]

As the reg entries show, you can also do this by adding or setting registry
entries using Cygwin regtool, Windows reg, or regedit commands.

Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.

Problem reports:
Unsubscribe info:

More information about the Cygwin mailing list