SFTP経由でアクセスできるバックアップスペースがあります。このリモートリポジトリの「mybackup」というディレクトリにバックアップを作成しました。それでは、リモートリポジトリに「mybackup-copy」という名前のmybackupディレクトリのコピーを作成したいと思います。
ディレクトリ全体をダウンロードした後、再アップロードせずにSFTPを使用してこれを行う方法はありますか?
たとえば、完全なSSHシェルアクセス権を持っている場合は、これを実行できますかcp -ar mybackup mybackup-copy
? SFTPプロトコルを介してこれを実行できますか?
答え1
コアSFTPプロトコルはリモートファイルのコピーをサポートしていません。ドラフトがありますcopy-data
/ copy-file
SFTPプロトコル拡張。
しかし、最も普及しているOpenSSH SFTPサーバーの中で、copy-data
最新のサポートはバージョン 9.0ただ。それsftp
顧客持つcp
注文する(ただし互換性のあるサーバーも必要です)。
拡張をサポートする他のサーバーは次のとおりです。FTPDプロトコルmod_sftp
とBitvise SFTPサーバー。
だから使用シェル cp
通常、コマンドは唯一の方法です。
答え2
リモート側でscp
これをサポートすると、次のように動作します。
scp -p host:/path/to/file/filename.ext host:/path/to/copy/of/file/
またはディレクトリをコピーしようとしていると言われたので:
scp -rp host:/path/to/directory host:/path/to/copy/
にディレクトリ/path/to/copy
があると仮定すると、後者のコマンドはhost
に新しいディレクトリを作成します。/path/to/copy/directory
host