jenkins 执行ssh 远程linux执行命令

1、远程机器编写脚本:

脚本名称为: /app/jboss/jboss-as/logs/ALL_SERVICE_STOP.sh

功能为:停止某个服务器某个目录下面的所有应用

#!/bin/bash

path=/app/jboss/jboss-as/logs

for instance in `ls $path|grep ".*.sh"|grep -v ALL_SERVICE_STOP.sh|xargs`;do
    cd $path
    ./$instance stop
done

2、2台linux机器实现远程连接(jenkins服务器也是linux机器)

  a、2台机执行ssh-keygen -t rsa ,生成id_rsa.pub文件

  b、在jenkins linux执行命令:scp /home/xxxx/.ssh/id_rsa.pub [email protected]:/home/xxxx/.ssh/authorized_keys  输入密码登录

  c、在jenkins linux再执行 scp /home/xxxx/.ssh/id_rsa.pub [email protected]:/home/xxxx/.ssh/authorized_keys  就不用输入密码登录了

3、jenkins构建执行shell 命令

  ssh -t -p 22 [email protected] " /app/jboss/jboss-as/logs/ALL_SERVICE_STOP.sh"

  就能执行远程命令了。

时间: 2024-08-12 17:23:03

jenkins 执行ssh 远程linux执行命令的相关文章

Ganymed SSH-2 java执行远程linux机器命令工具

Ganymed SSH2 for Java is a library which implements the SSH-2 protocol in pure Java(tested on J2SE 1.4.2 and 5.0). It allows one to connect to SSH servers from withinJava programs. It supports SSH sessions (remote command execution and shell access),

使用paramiko执行远程linux主机命令

paramiko是python的SSH库,可用来连接远程linux主机,然后执行linux命令或者通过SFTP传输文件. 关于使用paramiko执行远程主机命令可以找到很多参考资料了,本文在此基础上做一些封装,便于扩展与编写脚本. 下面直接给出代码: 1 # coding: utf-8 2 3 import paramiko 4 import re 5 from time import sleep 6 7 # 定义一个类,表示一台远端linux主机 8 class Linux(object):

SSH登录远程主机执行脚本找不到环境变量

这是因为在Linux上,bash会有四种模式,根据不同的case,Linux会加载不同模式的bash.一般如果你自己直接登录主机,能看到环境变量,但是使用ssh 远程登录执行脚本就找不到环境变量,那么在你的脚本中修改脚本解释器为如下形式,就能解决你的问题: #!/bin/bash --login 如果想了解详细的bash的四种模式以及各种模式的特点,请参考下面这篇文章,分析的非常详细: SSH连接远程主机执行脚本的环境变量问题

jenkins 配置ssh remotes 报Failed to authenticate with public key

问题:jenkins配置ssh远程连接时候报 ERROR: Failed to authenticate with public key com.jcraft.jsch.JSchException: invalid privatekey: [[email protected] jenkins前端提示:Can't connect to server 原因分析: 本地机器秘钥生成不对 必须将本地私钥完整内容拷贝,包括----字符(可能是个bug) 生成秘钥时候的密码错误 配置步骤: 1. priva

jenkins 执行远程linux命令

在Jenkins中进行构建时,可能需要首先SSH登录到一个远程服务器以执行必要的脚本,然后再执行构建.这时,需要安装SSH Plugin,并进行如下配置. 1.在Jenkins界面,系统管理->管理插件->安装SSH Plugin 说明,SSH Plugin的目的就是支持SSH到远程服务器,然后执行Shell命令. 2.在Jenkins界面,系统管理->Configure(配置)->SSH remote hosts 配置要SSH远程连接的服务器信息,示例如下: Hostname:

JAVA实现远程SSH连接linux并执行命令

package com.codeconch.ssh; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import com.jcraft.jsch.ChannelExec; import com.jcraft.jsch.JSch; import com.jcraft.jsch.JSchException;

ssh远程连接linux服务器并执行命令

详细方法: SSHClient中的方法 参数和参数说明 connect(实现ssh连接和校验) hostname:目标主机地址 port:主机端口 username:校验的用户名 password:登录密码 pkey:私钥方式身份验证 key_filename:用于私钥身份验证的文件名 timeout:连接超时设置 allow_agent:这是布尔型,设置False的时候禁止使用ssh代理 look_for_keys:也是布尔型,禁止在.ssh下面找私钥文件 compress:设置压缩 exec

linux:ssh远程执行命令并自动退出

ssh命令格式: [[email protected] ~]# ssh --helpusage: ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [-e escape_char] [-F configfile] [-I pkcs11] [-i identity_file] [-L [bind_address:]port:host:hostport] [-l lo

C#通过SharpSSH库与Linux服务器建立SSH连接并执行命令

在Unity3D项目开发工具时需要用到SSH连接远程Linux服务器执行命令,找到SharpSSH链接库后,通过此方法就可使用.   /// <summary>     /// SSH登录远程Linux服务器,并运行指令     /// </summary>     /// <param name="host">远程Linux服务器IP或域名</param>     /// <param name="username&qu