リモートセッションからローカルシステムにディレクトリをコピーできますか?

リモートセッションからローカルシステムにディレクトリをコピーできますか?

私はリモートサーバーのスクリーンセッションで私のコードを実行してきました。 SCPを使用して、リモートサーバー上のこのセッションで生成された出力ディレクトリをローカルサーバーに移動したいが、これはできません。

  1. これを行う方法はありますか?

  2. そうでない場合は、スクリーンセッションのフォルダをリモートサーバーにコピーします(ローカルサーバーとしてSCPを実行できるように)。

今はこれが私がすることです。

ssh [email protected]
[email protected]$ screen -r xxxx.pt
root@xxxxxx# ls media
Experiment_A

ローカルサーバー

scp [email protected]:/media/Experiment_A/features /Users/local/ExpResult

(算出)

scp: /media/Experiment_A/features: No such file or directory

答え1

ルートで開始されたセッションに再接続するようです。これらのファイルはにあります/root

どこにいても、そのファイルを読み取るにはファイル権限を変更する必要があるかもしれません。バラよりGnu / linuxでファイル権限などを設定する他の方法は何ですか?

シングルユーザー専用のマウントポイントにすることもできます。もしそうなら、ファイルが小さい場合はリモートシステムから自分にコピーしてscpを使用してください。

答え2

scp私の例では、コマンドのパスが少し間違っているようです。

次は動作します。

scp [email protected]:media/Experiment_A/features /Users/local/ExpResult

説明:リモートコンピューターにログインすると、ホームディレクトリに移動します。これは最も可能性が高いです/home/usernameusernameユーザー名がある場所)。ホームディレクトリにはこのmediaサブディレクトリがあります。

scpコマンドで以下を指定した場合相対パスつまり始まらないパスは、/ホームディレクトリに基づいています。したがって、/コマンドで使用されているパスから削除すると、ファイルを正しくコピーする可能性が最も高いパスが得られますmedia/Experiment_A/features

これがうまくいかない場合は、screenセッションが現在のディレクトリを別の場所に変更したためです。その後、pwdセッションでコマンドを実行し、scpコマンドのパス出力を使用します。

試してみるもう一つの方法はscp実行です。離れてデバイスはファイルをローカルデバイスに転送します。明らかに、これはSSHを使用してそのコンピュータにローカルにログインできる場合にのみ機能します。

関連情報