在远程linux机器上执行代码

时间:2010-12-22 20:36:25

标签: linux

我需要在远程linux机器上执行shell脚本。你知道有哪些工具可以帮助我做到这一点吗?

谢谢,

4 个答案:

答案 0 :(得分:3)

您可以通过ssh连接传递命令作为参数:

ssh user@remote.ip.address "~/myscript.sh"

要在没有密码的情况下连接,请使用ssh密钥。要使用密钥,您必须使用以下命令在您的计算机上生成一对:

ssh-keygen

然后获取文件〜/ .ssh / id_rsa.pub(或id_dsa.pub,如果你在ssh-keygen中使用参数-t dsa)的内容,并输入remote_machine的〜/ .ssh / authorized_keys文件。 .ssh目录必须拥有权限700。

答案 1 :(得分:1)

对于Python,您可以使用Paramiko通过SSH在远程计算机上运行命令。

答案 2 :(得分:0)

在终止ssh连接之前无需等待远程脚本完成无密码远程执行:

ssh -i ~/.ssh/id_rsa user@remote nohup sh /path/to/script.sh > /dev/null 2>&1 & 

答案 3 :(得分:0)

  1. 如果要在远程主机上执行本地脚本
  2. ssh remotePassword@remoteHost < localScript.sh

    1. 如果要在远程主机上调用脚本
    2. ssh remotePassword@remoteHost "remoteScript.sh"