一,初步

#执行方式
ssh 192.168.2.103 " nohup java -jar /home/a/ipf/ight/feedback/ixxxedback-platform-1.0-SNAPSHOT.jar > out.file 2>&1 &" 执行完这边立即断开,日志写在指定文件。
参考文章:
https://blog.csdn.net/oneinmore/article/details/50073443 示例:
ssh target "./test.sh"           # 等待命令完成后退出;本地Ctrl+C中断ssh会话,不会中断test.sh的执行(bash父进程变为1)(与登录终端执行命令而终端连接断开时的行为不一样)
  ssh target "./test.sh &"        # 等待命令完成后退出;本地Ctrl+C中断ssh会话,不会中断test.sh的执行(bash父进程本来就为1)
  ssh target "nohup ./test.sh &"   # 等待命令完成后退出;本地Ctrl+C中断ssh会话,不会中断test.sh的执行(bash父进程本来就为1)
  ssh target "nohup ./test.sh >/dev/null 2>&1 &" # 启动test.sh执行后就会退出(bash父进程本来就为1)
  ssh target "./test.sh >/dev/null 2>&1 &"            # 启动test.sh执行后就会退出(bash父进程本来就为1),这也表明ssh不退出与nohup命令本身没有什么关系

jenkins ssh远程执行nohup Java 后无法断开


#问题
Jenkins exec 执行shell 脚本,远程启动jar 包后控制台信息一直在转圈,无法正常退出。命令为: ssh user@IP " source /etc/profile && nohup java -jar xxxxx.jar > `date +%m%d`-out.file 2>&1 &" 查看部署服务器服务启动正常。
在Jenkins服务器上看进程 :
ps -ef |grep jenkins 发现子进程无法退出,即是执行启动命令,如上。 手动杀死后,部署服务器没有异常,说明nohup 没有异常,只是ssh 执行后没有退出。 su jenkins 进入后手动执行如上命令;没有正常退出,去掉source /etc/profile 重试, 无法正常启动jar 包,应该是没有环境变量。使用绝对路径执行: ssh user@IP " nohup /path/to/bin/java -jar xxxxx.jar > `date +%m%d`-out.file 2>&1 &" 后成功,原因是source 引起的,导致ssh 执行后无法退出,具体原理不清楚。

Jenkins-ssh远程执行nohup- java无法退出的更多相关文章

  1. ssh远程执行nohup命令不退出

    https://blog.csdn.net/oneinmore/article/details/50073443

  2. ssh远程执行命令并自动退出(已测试通过)

    转自:http://blog.csdn.net/fdipzone/article/details/23000201 ssh命令格式如下: usage: ssh [-1246AaCfgKkMNnqsTt ...

  3. Linux:ssh远程执行命令并自动退出

    ssh命令格式: [root@localhost ~]# ssh --helpusage: ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c ...

  4. jenkins pipeline中执行nohup java -jar ***.jar & 的时候会忽略执行jar之后的命令

    搜索关键词:pipeline中执行nohup时忽略执行& 问题: 在做自动化部署的时候,脚本如下: sh "ssh root@'$target_ip' nohup '$java_ho ...

  5. ssh远程执行命令并自动退出

    usage: ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [ ...

  6. ssh 远程执行命令 nohup 无效问题

    昨夜1:00多准备睡觉了,突然一哥们咨询了我一个问题. 他A机器上远程执行B机器(ssh user@ip "command")上的脚本,B上的服务并没有起来. 看了下截图,脚本确实 ...

  7. SSH远程执行命令环境变量问题

    SSH命令格式 usage: ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec] [-D [bind_address: ...

  8. 使用ssh远程执行命令批量导出数据库到本地

    前天正在跟前端的同事调试功能.服务器开好,模拟的玩家登录好,就在倒计时.这时突然运营的同事跑过来说要统计几个服务器玩家的一些情况,也就是需要从几个服的数据库导出部分玩家的数据.好吧,我看了一下时间,1 ...

  9. 使用ssh远程执行命令批量导出数据库到本地(转)

    前天正在跟前端的同事调试功能.服务器开好,模拟的玩家登录好,就在倒计时.这时突然运营的同事跑过来说要统计几个服务器玩家的一些情况,也就是需要从几个服的数据库导出部分玩家的数据.好吧,我看了一下时间,1 ...

  10. 解决SSH远程执行命令找不到环境变量的问题

    通过SSH执行远程主机的命令或脚本时,经常会出现找不到自定义环境变量的问题.但是,如果通过SSH登录远程主机,然后再执行相同的命令或脚本,那么此时执行又是成功的.两种相似的方法,得到的结果却截然不同, ...

随机推荐

  1. 第八周课程报告&&实验报告六

    Java实验报告 班级 计科一班 学号 20188390 姓名 宋志豪 实验四 类的继承 实验目的 理解异常的基本概念: 掌握异常处理方法及熟悉常见异常的捕获方法. 实验要求 练习捕获异常.声明异常. ...

  2. 【Linux 网络编程】滑动窗口协议

    <1>通知接受窗口(rwnd): 预防应用程序发送的数据超过对方的缓冲区.接收方使用的流量控制<2>拥塞窗口(cwnd): 预防应用程序发送的数据超过网络所承受的能力.发送方使 ...

  3. [转帖]Linux下inotify监控文件夹状态,发生变化后触发rsync同步

    Linux下inotify监控文件夹状态,发生变化后触发rsync同步 https://www.cnblogs.com/fjping0606/p/6114123.html 1.安装工具--inotif ...

  4. Python 入门之 内置模块 -- re模块

    Python 入门之 内置模块 -- re模块 1.re 模块 (1)什么是正则? 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类 ...

  5. 字符串连连看 (和hihocoder 字符消除类似)

    题目描述 对于输入的字符串,从左到右扫描字符串,如果存在由三个以上(包括三个)连续相同字符组成的子串,就将这个子串从原串中去掉,并将原有字符串剩下的部分拼接到一起.重复上述过程,直到无法去掉任何子串 ...

  6. crm客户资源显示控制

    为便于员工之间的良性竞争,避免恶意挖客户,对于不同的登录用户,在客户列表中只显示当用用户自己所拥有的客户列表. ---具体的,通过在列表显示界面的列表查询语句中增加根据用户id查询其对应的客户资源的条 ...

  7. webstorm 如何去掉下划线

    当前webstorm版本:2018.3.5 百度了也没找到解决办法,最终结合了和群友的给的位置,找到了修改地方,只能怪版本迭代太快了,要适应 右上角Effects点掉就可以了

  8. echarts 给legend图例加个标题式文字设置为普通文本不可点击

    legend: [ { orient: "horizontal", // 'vertical' x: "68%", // 'center' | 'left' | ...

  9. 通过JNI实现java调用C代码和C代码调用java的代码

    一.java调用C代码 1)java中需要声明调用的函数,也就是native方法,并通过System.LoadLibrary来调用dll或者so(C代码).实例代码如下: public class H ...

  10. 2019-11-29-Roslyn-使用-Directory.Build.props-文件定义编译

    title author date CreateTime categories Roslyn 使用 Directory.Build.props 文件定义编译 lindexi 2019-11-29 08 ...