【问题标题】:how to fetch data from a unix server to another server in unix? [closed]如何从unix服务器获取数据到unix中的另一台服务器? [关闭]
【发布时间】:2017-06-19 01:25:57
【问题描述】:

有两个 unix 服务器,分别称为 HYD13 和 HYD25。

我在 HYD13 中有一个脚本(在我的主目录中),它仅从该服务器(HYD13)获取所需的数据,并且所有所需的数据都打印在一个文本文件中。

但我的要求是我需要在 HYD25 中配置相同的脚本(在一个路径中),它将从 HYD13 服务器获取数据并在 HYD25 服务器(提到的路径)中打印数据。但问题是如何在脚本中从 HYD25 连接 HYD13 服务器?

你能帮我解决这个问题吗?

【问题讨论】:

    标签: perl shell unix server


    【解决方案1】:

    您通常会使用scprsync 之类的东西,具体取决于您要移动的数据量。 scp 可以移动文件和目录,而rsync 在您需要同步和更新目录时很好。

    两人都在讨论ssh,所以为了避免一遍又一遍地输入密码(或者更糟糕的是,将密码硬编码到脚本中),请务必使用 ssh 密钥和 ssh-agent。这使您无需输入密码即可登录服务器,而是使用存储的密钥,所有这些都与登录您的帐户有关。 Github 有a good tutorial on creating keys and adding them to an ssh-agent。 Ubuntu也有a good tutorial which covers ssh in more detail and how to put the key on the remote machine.

    最后,不必将您的私钥放在 HYD13 和 HYD25 上,您可以将这些密钥留在一台机器上,并在您登录 HYD13 或 HYD25 时使用 ssh 密钥转发来使用这些凭据。同样,Github has a nice tutorial on how to do this

    【讨论】:

      【解决方案2】:

      我希望 HYD13 和 HYD25 可以通过 Internet 或 LAN 或任何其他方式相互通信。如果是这样,

      • 您可以通过 ssh 从 HYD25 执行脚本

        ssh username@HYD13 '< bash path-to-script-on-HYD13 >'

      这将在 HYD25 的终端上打印该脚本的输出,您可以将其重定向到任何文本文件。

      • 如果脚本本身将数据写入 HYD13 上的本地文件,您可以简单地 cat 它,以便将文件的内容打印到 HYD25 的终端上

        ssh username@HYD13 '< bash path-to-script-on-HYD13 >; cat <script's output file>'

      希望这是你想要的。

      【讨论】:

        猜你喜欢
        • 2012-12-06
        • 2016-12-09
        • 2014-08-09
        • 1970-01-01
        • 2013-01-08
        • 1970-01-01
        • 2020-04-20
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多