Jas*_*oyd 2 windows-services artifactory windows-server-2016
我正在尝试在Windows Server上运行Artifactory但Artifactory服务无法启动.我在Hyper-V中的VM中运行Windows Server 2016 Datacenter.我已经尝试过使用和不使用Windows GUI的服务器安装.Artifactory通过Chocolatey安装:
choco install Artifactory -y
Run Code Online (Sandbox Code Playgroud)
当我尝试使用PowerShell启动服务时:
Start-Service Artifactory
Run Code Online (Sandbox Code Playgroud)
我立即在PowerShell中收到此错误:
由于以下错误,无法启动服务'artifactory(Artifactory)':无法在计算机上启动服务Artifactory'.'.
Windows事件日志按以下顺序显示这两个错误:
- 等待Artifactory服务连接时达到超时(30000毫秒).
- 由于以下错误,Artifactory服务无法启动:服务未及时响应启动或控制请求.
同样,这些错误立即发生,因此超时错误完全错误.
但我能够手动启动Artifactory流程:
C:\Program Files\artifactory\bin\artifactory.bat
Run Code Online (Sandbox Code Playgroud)
公地daemon.2017-08-10.log
[2017-08-10 10:02:53] [info] [ 2344] Commons Daemon procrun (1.0.11.0 64-bit) started
[2017-08-10 10:02:53] [info] [ 2344] Service Artifactory name Artifactory
[2017-08-10 10:02:53] [info] [ 2344] Service 'Artifactory' installed
[2017-08-10 10:02:53] [info] [ 2344] Commons Daemon procrun finished
[2017-08-10 10:02:54] [info] [ 3420] Commons Daemon procrun (1.0.11.0 64-bit) started
[2017-08-10 10:02:54] [info] [ 3420] Updating service...
[2017-08-10 10:02:54] [info] [ 3420] Service 'Artifactory' updated
[2017-08-10 10:02:54] [info] [ 3420] Update service finished.
[2017-08-10 10:02:54] [info] [ 3420] Commons Daemon procrun finished
[2017-08-10 10:02:54] [info] [ 1468] Commons Daemon procrun (1.0.11.0 64-bit) started
[2017-08-10 10:02:54] [info] [ 1468] Updating service...
[2017-08-10 10:02:54] [info] [ 1468] Service 'Artifactory' updated
[2017-08-10 10:02:54] [info] [ 1468] Update service finished.
[2017-08-10 10:02:54] [info] [ 1468] Commons Daemon procrun finished
[2017-08-10 10:02:54] [info] [ 1000] Commons Daemon procrun (1.0.11.0 64-bit) started
[2017-08-10 10:02:54] [info] [ 1000] Updating service...
[2017-08-10 10:02:54] [info] [ 1000] Service 'Artifactory' updated
[2017-08-10 10:02:54] [info] [ 1000] Update service finished.
[2017-08-10 10:02:54] [info] [ 1000] Commons Daemon procrun finished
[2017-08-10 10:02:54] [info] [ 5016] Commons Daemon procrun (1.0.11.0 64-bit) started
[2017-08-10 10:02:55] [info] [ 5016] Updating service...
[2017-08-10 10:02:55] [info] [ 5016] Service 'Artifactory' updated
[2017-08-10 10:02:55] [info] [ 5016] Update service finished.
[2017-08-10 10:02:55] [info] [ 5016] Commons Daemon procrun finished
[2017-08-10 10:02:55] [info] [ 4308] Commons Daemon procrun (1.0.11.0 64-bit) started
[2017-08-10 10:02:55] [info] [ 4308] Updating service...
[2017-08-10 10:02:55] [info] [ 4308] Service 'Artifactory' updated
[2017-08-10 10:02:55] [info] [ 4308] Update service finished.
[2017-08-10 10:02:55] [info] [ 4308] Commons Daemon procrun finished
[2017-08-10 10:02:55] [info] [ 1168] Commons Daemon procrun (1.0.11.0 64-bit) started
[2017-08-10 10:02:55] [info] [ 1168] Updating service...
[2017-08-10 10:02:55] [info] [ 1168] Service 'Artifactory' updated
[2017-08-10 10:02:55] [info] [ 1168] Update service finished.
[2017-08-10 10:02:55] [info] [ 1168] Commons Daemon procrun finished
Run Code Online (Sandbox Code Playgroud)
artifactory的-services.2017-08-10.log
[2017-08-10 10:02:56] [info] [ 3172] Commons Daemon procrun (1.0.11.0 64-bit) started
[2017-08-10 10:02:56] [info] [ 3172] Updating service...
[2017-08-10 10:02:56] [info] [ 3172] Service 'Artifactory' updated
[2017-08-10 10:02:56] [info] [ 3172] Update service finished.
[2017-08-10 10:02:56] [info] [ 3172] Commons Daemon procrun finished
[2017-08-10 10:02:56] [info] [ 540] Commons Daemon procrun (1.0.11.0 64-bit) started
[2017-08-10 10:02:56] [info] [ 540] Updating service...
[2017-08-10 10:02:56] [info] [ 540] Service 'Artifactory' updated
[2017-08-10 10:02:56] [info] [ 540] Update service finished.
[2017-08-10 10:02:56] [info] [ 540] Commons Daemon procrun finished
Run Code Online (Sandbox Code Playgroud)
使用procmon我注意到,当我尝试启动'artifactory'服务时,它启动了'artifactory-service.exe'.试图直接自己运行该程序导致以下错误:
系统无法找到服务"artifactory-service"的注册表项.加载配置失败系统找不到指定的文件.Commons Daemon procrun失败并退出值:2(无法加载配置)系统找不到指定的文件.
再次检查procmon表明,当我启动'artifactory-service.exe'时,它正在尝试访问注册表项'HKLM\SOFTWARE\WOW6432Node\Apache Software Foundation\Procrun 2.0\artifactory-service'而没有找到它.我通过注册表确认此注册表项不存在.我倾向于认为这是服务无法启动的部分原因.
小智 6
这似乎是由artifactory-service.exe导致在Service定义中使用不常见的字符引起的.在我检查服务时运行installService.bat后,"可执行路径"了
...\artifactory-pro-5.5.1\bin\artifactory-service.exe ?//RS//Artifactory
Run Code Online (Sandbox Code Playgroud)
不寻常的字符是一些奇怪的unicode字符,如:http: //www.fileformat.info/info/unicode/char/0cf4/index.htm
这似乎是由artifactory-service.exe引起的,它只是旧版本的"Commons Daemon Service Runner"prunsrv.exe v1.0.11.0.我无法找到此错误的文档,因此我不知道其根本原因.
我要解决的问题是从Tomcat 8安装(tomcat8.exe)获取最新版本的prunsrv.exe v1.0.15.0并将其重命名为artifactory-service.exe并将其放回%ARTIFACTORY_HOME%\ bin中安装文件夹.这使它可以安装并开始运行而不会出现问题.
伟大的!你的程序对我有用,非常感谢。gremlin 是我们在安装后在服务完整路径上看到的非法字符。我很困惑,因为artifactory服务在Windows 10下工作正常,但在Windows 2016下拒绝工作。尝试延长PipeServiceTimeout无济于事。
如果你们中的一些人不清楚,只需将下载的最新 tomcat 8.5.23 中的tomcat8.exe重命名为artifactory-service.exe即可。检查文件属性可以查看原始文件prunsrv.exe v1.0.11.0或prunsrv.exe v1.0.15.0。
归档时间: |
|
查看次数: |
1691 次 |
最近记录: |