Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
领事Windows服务不再以错误“启动”;“功能不正确”;_Windows_Service_Windows Services_Consul_Nssm - Fatal编程技术网

领事Windows服务不再以错误“启动”;“功能不正确”;

领事Windows服务不再以错误“启动”;“功能不正确”;,windows,service,windows-services,consul,nssm,Windows,Service,Windows Services,Consul,Nssm,所以有一次我让Concur在Windows7上运行。这是几个月前的事了。最近我开始回顾Concur,所以我用找到的巧克力包装安装了它 首先,包在尝试启动服务时总是抛出错误。错误: c o n s u l : U n e x p e c t e d s t a t u s S E R V I C E _ S T O P P E D i n r e s p o n s e t o S T A R T c o n t r o l . 但这并不能让Chocolate认为

所以有一次我让Concur在Windows7上运行。这是几个月前的事了。最近我开始回顾Concur,所以我用找到的巧克力包装安装了它

首先,包在尝试启动服务时总是抛出错误。错误:

c o n s u l :   U n e x p e c t e d   s t a t u s   S E R V I C E _ S T O P P E D   i n   r e s p o n s e   t o   S T A R T   c o n t r o l .
但这并不能让Chocolate认为软件包安装失败。之后,我尝试使用nssm转储服务,如下所示:

C:\ProgramData\chocolatey PS>nssm dump consul
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe install consul C:\ProgramData\chocolatey\lib\consul\tools\consul.exe
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul AppParameters "agent -ui -config-dir=C:\ProgramData\consul\config -data-dir=C:\ProgramData\consul\data -bind '127.0.0.1' -bootstrap -server"
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul AppDirectory C:\ProgramData\chocolatey\lib\consul\tools
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul AppExit Default Exit
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul AppEnvironmentExtra :GOMAXPROCS=2
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul AppStdout C:\ProgramData\consul\logs\consul-output.log
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul AppStderr C:\ProgramData\consul\logs\consul-error.log
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul AppRotateFiles 1
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul AppRotateOnline 1
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul AppRotateBytes 10485760
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul DisplayName consul
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul ObjectName "NT Authority\NetworkService"
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul Start SERVICE_AUTO_START
C:\ProgramData\chocolatey\lib\NSSM\tools\nssm.exe set consul Type SERVICE_WIN32_OWN_PROCESS
如果我将上面的AppParameters粘贴到concur之后,它将非常有效。所以,我不明白为什么我不能启动这项服务

C:\ProgramData\chocolatey PS>start-service consul
start-service : Service 'consul (consul)' cannot be started due to the following error: Cannot start service consul on computer '.'.
At line:1 char:1
+ start-service consul
+ ~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OpenError: (System.ServiceProcess.ServiceController:ServiceController) [Start-Service], ServiceCommandException
    + FullyQualifiedErrorId : CouldNotStartService,Microsoft.PowerShell.Commands.StartServiceCommand
当我查看事件查看器时,它会告诉我以下错误消息:

The consul service terminated with the following service-specific error: 
Incorrect function.
最近有人在Windows上使用过领事巧克力套装吗?这是否有可能是Windows错误、NSSM错误,甚至是领事错误?
我尝试了不同版本的NSSM和不同版本的Concur,结果都是一样的。如果我能在Windows上运行Concur,我将不胜感激。

为了防止其他人遇到这个问题,我有几个问题需要解决,以便启动该服务

首先,我有多个私有IP地址,当我使用Chocolate安装软件包时,我需要使用
choco install
命令的
--params
选项指定IP地址,或者通过Consor配置文件指定IP地址。我在上面做了这件事,但一开始我为此浪费了很多时间。另外,在指定要绑定到的IP地址时,还需要指示需要在服务器模式下运行concur。因此,在某些情况下,仅仅下载包并尝试运行consul是行不通的。另外,
=
符号在使用concur指定参数时非常重要。有时,您可以只添加空格而不使用引号,但我建议您始终使用
=
指定参数。我用来让它在本地Windows 7计算机上运行的最后一个命令是:

cinst-concur--yes--force--params='”-server-bootstrap-bind=“”127.0.0.1”“”

在故障排除过程中,我遗漏了几件事

  • 如果您已经安装了Concur,请确保服务已停止,并且在尝试使用Chocolate重新安装Concur之前,确保没有运行任何Concur进程。要确保这一点,请在PowerShell中运行:
  • 
    停止服务领事;Get Process Consult-ErrorAction SilentlyIgnore | Stop Process-Force
    

  • 如果服务无法启动,请查看巧克力包将日志文件放置在何处。对我来说,它在C:\ProgramData\Concur\logs\Concur-error.log下

  • 我没有先知道。这真是一个很棒的工具,可以让你轻松调试为什么服务无法启动。如果您想调整concur的开始参数,只需在控制台中运行以下命令:

  • nssm编辑领事