リモートサーバー上のファイルをローカルコンピュータに保存する方法は?

リモートサーバー上のファイルをローカルコンピュータに保存する方法は?

小さなコンピュータ(Red Pitaya-linux)からデータをインポートして容量が非常に大きいため、外部PCに保存する必要があります。また、同じ理由でファイルを最初に保存してから、sshを使用してコピーしたくありません。インポートスクリプトにsshを挿入する必要がありますか?

答え1

ご質問がある場合は、SFTP(https://www.freebsd.org/cgi/man.cgi?query=sftp&sektion=1)あるサーバーから別のサーバーにファイルを送信するのが最善の選択肢のようです。データのサイズによっては、SCPコマンドも機能します。 WinSCP、Filezillaを使用するか、コマンドライン(ほとんどのインストールではusr / bin / sftp、IP / hostname:portを含める必要があります)で実行できます。

答え2

インポートスクリプトにsshを挿入する必要がありますか?

おそらく。

コンパクトコンピュータで実行されているジョブがコレクションデータをstdoutとして印刷する場合(またはそれを行うことができる場合)、それを実行してローカルsshコンピュータのstdoutをファイルにリダイレクトします。

例えば

ssh user@redpitaya 'data-gathering-script-or-command' > localfile

出力が大規模または高価なネットワーク接続を介して接続されている場合は、小型システムで標準出力を圧縮して時間(またはコスト)を節約できます。

例えば

ssh user@redpitaya 'data-gathering-script-or-command | gzip' > localfile.gz

または

ssh user@redpitaya 'data-gathering-script-or-command | gzip' | 
  gzip -d > localfile

xz代わりに、またはlzma他の圧縮ツールを使用できますgzip

注:ネットワークトラフィックを最小限に抑えるために、コンパクトコンピュータのCPU時間を使用しています。小さなボックスに小型で性能の低いCPUがある場合は、小さなボックスに過負荷がかからないように注意してください。

関連情報