This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: cygrunsrv does not start cygsshd at boot


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,
--preshutdown).
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

SERVICE_NAME: 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

SERVICE_NAME: cygsshd
        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
/proc/registry/HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/cygsshd/
...
Start (REG_DWORD) = 0x00000002 (2)		# [auto]
DelayedAutostart (REG_DWORD) = 0x00000001 (1)	# [delayed]
...
$ regtool -pv list
/proc/registry/HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/cygsshd/Parameters/
...
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:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]