当前位置: 首页 > 面试题库 >

通过Jenkins SSH Shell脚本在远程服务器上启动守护程序神秘退出

孙成益
2023-03-14
问题内容

我在jenkins上有一个正在构建我的项目的构建作业,完成后,它在远程服务器上打开ssh shell脚本并传输文件,然后停止并启动守护程序。

当我从RHEL服务器上的命令行停止并启动守护程序时,它执行得很好。当工作以詹金斯执行时,没有错误。

守护程序可以正常停止并且可以正常启动。但是启动后不久,守护程序突然死亡。

sudo service daemonName stop
# transfer files.
sudo service daemonName start

我确定问题没有解决

有谁知道Jenkins执行ssh shell脚本的方式有什么特殊之处,它将导致守护进程启动未完全完成?


问题答案:

问题:通过jenkins执行构建时,启动守护进程的命令显然已成功执行,但是在完成构建作业之后,守护进程会突然退出。

解决方案:我一直认为这是詹金斯杀死守护进程。因此,我尝试了许多不同的方式和排列,以禁用通过并清除僵尸子进程的ProcessTree模块。我尝试通过重置BUILD_ID环境变量来愚弄它。没事。

感谢这个线程,我发现该解决方案仅适用于在BUILD机器上执行的子进程。IE浏览器不适用于我的问题。

解决方案?没事

因此,现在该构建通过执行以下操作成功重启了守护程序:sudo nohup service daemonname start



 类似资料:
  • 问题内容: 哈o 我试图让python脚本在(ubuntu)linux上作为服务(守护程序)运行。 在网络上,存在几种解决方案,例如: http://pypi.python.org/pypi/python- daemon/ 行为规范的Unix守护进程很难正确执行,但是每个守护程序所需的步骤几乎相同。DaemonContext实例保存程序的行为和配置的进程环境。使用实例作为上下文管理器进入守护程序状

  • 问题内容: 我正在尝试从CGI脚本启动后台进程。基本上,提交表单时,CGI脚本将向用户指示他或她的请求正在处理中,而后台脚本则进行实际处理(因为该处理往往会花费很长时间。)我面临的问题是Apache不会在子脚本终止之前将父CGI脚本的输出发送到浏览器。 一位同事告诉我,我想做的事情是不可能的,因为无法阻止Apache等待CGI脚本的整个过程树消失。但是,我在网络上也看到了很多关于“双叉”技巧的参考

  • 在Oracle数据库服务器上,我能够安排一个夜间作业,该作业运行从powershell脚本启动的oracle脚本,该脚本具有以下行: 现在,我需要在另一台windows机器上实现同样的功能,Oracle的唯一功能就是SQLcl客户端。我能够调用sql脚本,但目前为止仅通过三个步骤进行交互: 我需要的是oracle initial\u脚本。sql脚本从powershell启动。我有两个障碍。 要连接

  • 尝试远程启动服务时遇到奇怪的行为。 编辑:我进一步研究了这个问题,发现只有在尝试运行我的特定服务时才会出现这种情况。这意味着我的服务必须从已经登录的用户的会话中运行(这就是为什么如果我之前使用mstsc访问服务器,它仍然可以工作)。所以我想我的新问题是--有没有一种方法可以让我从PowerShell登录到远程机器? 多谢了。

  • 问题内容: 我正在调试一些必须在我的虚拟机上运行的python脚本。而且,我更喜欢在本地(虚拟机外部)编辑脚本。因此,我发现每次都将脚本修改为虚拟机 很繁琐。谁能提出一些有效的方法? 特别是,我想知道是否可以在远程PVM上执行python脚本。像这样: 问题答案: 可以使用ssh。Python接受连字符(-)作为执行标准输入的参数, 运行 python –help 以获得更多信息。

  • 我在我的ubuntu 12.04中安装了Hadoop 2.6.0。当我启动/停止dfs-sh守护程序时,它显示以下错误。请帮助我克服这个问题 无需停止namenode本地主机:停止datanode停止次要namenodes[0.0.0.0] 0.0.0.0:停止次要namenode 2004年5月16日10:40:03警告util。NativeCodeLoader:无法为您的平台加载本机hadoo