あるFTPサーバーから別のFTPサーバーにリモートファイルを直接転送するにはどうすればよいですか?
あるFTPサーバーから別のFTPサーバーにリモートファイルを直接転送するにはどうすればよいですか?
回答:
リモートドライブをローカルドライブ(「仮想ドライブ」と呼ばれる)のようにマウントするWebDriveなどのアプリを使用し、自分のマシン上の1つの仮想ドライブから別の仮想ドライブにファイルをドラッグアンドドロップすることができます。
使い方
http://example.com
サーバーのFTPの詳細を入力して、最初の仮想ドライブを作成します。http://example.org
サーバーのFTPの詳細を入力して、2番目の仮想ドライブを作成します。WebDriveは最初のFTPロケーションからあなたのマシンにそれらをコピーし(このステップは表示されません;バックグラウンドで起こります)、それらをあなたのために2番目のFTPロケーションにコピーします。これは、まだ広くサポートされていないFXPプロトコルを使用せずに、FTPサーバー間で直接コピーするのに最も近い方法です。
WebDriveの代替手段
WebDriveに加えて、Transmit(Macのみ)またはExpandriveを検討することもできます。、同じリモートディスクマウント機能を提供する(MacおよびWindows)。(Transmitのディスク機能を毎日使用して、最適化された画像をPhotoshop / Fireworksから直接FTPサーバーに直接保存します。それは素晴らしいことですが、ExpandiveとWebDriveの両方がこれも行います。)
移行元サーバーにSSHアクセスできる場合は、ログインして、ftp
コマンドを使用して移行先サーバーとのFTPセッションを開始できます。コマンドラインを使用してftpコマンドを入力する必要がありますが、それほど難しくはなく、オンラインでチュートリアルを見つけることができます。例:http : //linux.about.com/od/commands/l/blcmdl1_ftp.htm
編集: Windowsを使用していることがわかりました。WindowsでUnixツールキットをエミュレートするには、Cygwinのようなものが必要です。または、WinSCPのようなものを使用できます。
アレクサスが指摘したように、SCPは素晴らしい選択肢です。別のオプションは、Unix / Linuxのrsync(ほとんどすべてのUnixベースのマシンで利用可能)です。これは、バックアップに頻繁に使用されるユーティリティです。
2つのサーバー、abc.comとxyz.com間で転送する場合:
rsync -avzPe ssh user@xyz.com:/source/ /destination/on/abc
より実用的な例:
rsync -avzPe ssh admin@xyz.com:~/public_html/ ~/public_html/
いくつかの注意:上記の例は、サーバーabc.comにログインしていることを前提としています。他の方法を使用する場合は、引数を切り替えます。ユーザー(この場合はadmin)にも適切なSSHアクセスが必要です。最後に、私が使用したフラグは必ずしも機能するものだけではなく、私が使用する傾向のあるものです。技術的に-vおよび-Pなしで実行できますが、コンソール出力はあまり有用ではありません。
SSHアクセスがある場合、NIX tarコマンド(圧縮)を使用し、scpを使用して新しいホスティングを介して転送し、再びtarを使用して圧縮を解除し、バックアップのためにローカルドライブにコピーを保持することをお勧めします。