如何使用sudo权限从Jenkins运行远程ssh会话?

时间:2013-10-02 09:21:51

标签: linux ssh jenkins remote-access sudo

使用'在远程主机上使用ssh执行shell脚本'选项,并在远程服务器上需要sudo权限来更改权限并删除受保护的文件。 如何使用此权限运行会话?

获取消息

  

sudo:抱歉,你必须有一个tty来运行sudo

尝试运行sudo命令时。

2 个答案:

答案 0 :(得分:0)

如果远程服务器接受root用户的直接登录,您只需执行以下操作:

ssh -l root yourserver command_to_execute

类似的语法是:

ssh root@yourserver command_to_execute

请注意,允许通过ssh登录root用户到远程服务器并不总是一个好的解决方案。 更好的解决方案是更改所有者/权限以允许非root用户修改受保护的文件。

答案 1 :(得分:0)

要远程运行sudo,您有2个选项

  1. 允许用户在没有密码的情况下运行sudo命令。

username ALL=(ALL) NOPASSWD: ALL文件中附加/etc/sudoers sudo visudo。或者,您可以修改此行以仅允许某些sudo命令在没有密码的情况下运行

  1. 使用伪tty远程模拟tty并在需要时输入您的sudo密码。

为此,请运行ssh -t username@host command_to_execute