• Jenkins解决Host key verification failed


    1.在没有做任何操作时,是这样报错的

    a.在任务中配置远程执行命令

    rsync -raz --delete --progress  target/testweb-v1.1.jar  root@10.0.0.41:/data/

    ssh root@10.0.0.41 "java -jar /data/testweb-v1.1.jar"

    要远程到10.0.0.41这台服务器上执行java命令,所以这台服务器上得有java环境,简单点用yum装就行:

    yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel

    b.构建后报错信息

    2.报错原因

    a.jenkins普通用户无法执行某些系统命令;

    b.我们并没有为jenkins生成过密钥对,也没有将他的公钥拷到目标服务器上.

      在安装jenkins后,系统生成了jenkins这个普通用户,但是在/etc/passwd中,他的shell是/bin/false,所以他不能登录系统,也没有家目录;

      首先我们修改他的登录权限,将/bin/false改为/bin/bash,切换到jenkins用户,su - jenkins,他的终端显示为-bash-4.2$,修改终端显示.

    终端修改完之后长这个样子

    生成密钥对

    具体步骤

    vim ~/.bash_profile
    export PS1='[u@h W]$'
    source ~/.bash_profile
    # 给jenkins生成密钥对
    ssh-keygen -t rsa
    ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.0.0.41
    # 验证
    ssh 'root@10.0.0.41'
    

    3.使用sudo提升普通用户权限

      此时是完成了第二步,但还没有操作第一步,在文件末尾添加一行,就这么一行就有很多要注意的地方,首先修改文件权限为600,然后用viduso去修改文件,中间的空隙不是空格,而是tab,命令和命令之间要用逗号,保存退出后,将权限改为440,而不是400,最后用visudo -c检查语法是否出错.

    jenkins        ALL=(ALL)    NOPASSWD: /usr/bin/ssh, /usr/bin/rsync

    jenkins        ALL=(ALL)    NOPASSWD: ALL

    这两行内容任意选一个都行.

    重启服务,构建任务

    参考博客:https://blog.csdn.net/cdnight/article/details/81078191

  • 相关阅读:
    oraToolKit Oracle安装辅助工具的使用方法
    oraToolKit Oracle安装辅助工具的使用方法
    创建Oracle数据库、数据库名与实例名与SID之间的关系(图文详解)
    创建Oracle数据库、数据库名与实例名与SID之间的关系(图文详解)
    RHEL6.1 安装 Oracle10gr2 (图文、解析)
    RHEL6.1 安装 Oracle10gr2 (图文、解析)
    14.1.3 Turning Off InnoDB 关掉InnoDB
    zabbix 获取jvm session信息
    Mysql 执行计划分析
    mysql 执行计划走索引
  • 原文地址:https://www.cnblogs.com/fawaikuangtu123/p/10316404.html
Copyright © 2020-2023  润新知