gpt4 book ai didi

linux - 通过 Jenkins SSH 插件连接和普通 ssh 之间的区别

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:43:33 26 4
gpt4 key购买 nike

我有一个远程服务器。
如果我使用 ssh 作为 Jenkins 用户连接服务器,它会完美运行

ssh jenkins@remoteserver.com

允许 jenkins 用户更改为用户 jboss 而无需询问密码:

sudo su jboss

这非常有效,无需输入密码。一切如预期。

如果我构建 Jenkins,通过 SSH 插件连接到远程服务器,连接工作正常。我也可以运行测试脚本,它也可以!

但是如果我在我的远程服务器上通过 Jenkins 创建 sudo su jboss,它就无法工作。
Jenkins 没有抛出任何错误,只有旋转的圆圈 spinning circle
它永远不会停止,除非我取消工作。

任何人都知道,在 Jenkins 中运行 ssh 和通过插件连接有什么区别?更改用户名时连接是否丢失? (看起来像)

最佳答案

SSH plugin ssh 命令提供了两种完全不同的 SSH 协议(protocol)实现方式:

  • 您的ssh 命令可能会运行OpenSSH客户
  • SSH 插件使用JSch 提供的SSH 协议(protocol)实现。

我不喜欢 JSch,但我怀疑插件配置 JSch 终端处理的方式有问题,或者有与使用 JSch 进行终端处理。两者都可能破坏 sudo 的行为:

sudo 对终端/tty 设置有些敏感;参见例如this discussion ,其中还包含一些可能有助于解决此问题的提示。

关于linux - 通过 Jenkins SSH 插件连接和普通 ssh 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39982648/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com