web-dev-qa-db-ja.com

FTPを使用して、あるサーバーから別のサーバーにファイルを転送する方法

1つのFTPサーバーから別のFTPサーバーにリモートファイルを直接転送するにはどうすればよいですか?

12
KoolKabin

FXPプロトコル をサポートするFTPプログラムを使用できます。2つのサーバーもそれをサポートする必要があります。 FXPプロトコルをサポートするFTPアプリケーションは次のとおりです。

非FXPの代替方法は、 WinSCPプッシュおよびプル を使用することです。

12
paulmorriss

WebDrive、 のようなアプリを使用して、リモートFTPドライブをローカルドライブ(「仮想ドライブ」と呼ばれる)のようにマウントし、1つの仮想ドライブから別の仮想ドライブにファイルをドラッグアンドドロップすることができます。自分のマシン。

仕組み

  1. ダウンロード WebDriveこちら (MacまたはWindows、20日間無料トライアル)
  2. http://example.comサーバーのFTP詳細を入力して、最初の仮想ドライブを作成します。
  3. http://example.orgサーバーのFTP詳細を入力して、2番目の仮想ドライブを作成します。
  4. 最初の仮想ドライブにコピーするファイルを参照し、2番目の仮想ドライブにドラッグします。

WebDriveはそれらを最初のFTPロケーションからあなたのマシンにコピーし(このステップは表示されません。バックグラウンドで行われます)、次に2番目のFTPロケーションにコピーします。これは、まだ広くサポートされていないFXPプロトコルを使用せずに、FTPサーバー間で直接コピーするのに最も近い方法です。

WebDriveの代替案
WebDriveに加えて、同じリモートディスクを提供する Transmit (Macのみ)または Expandrive (MacおよびWindows)を検討することもできます。取り付け機能。 (Transmitのディスク機能を毎日使用して、最適化された画像をPhotoshop/Fireworksから直接FTPサーバーに直接保存します。素晴らしいことですが、ExpandiveとWebDriveの両方がこれも行います。)

5
Nick

編集: Windowsを使用していることがわかりました。 WindowsでUnixツールキットをエミュレートするには、Cygwinのようなものが必要です。または、WinSCPのようなものを使用できます。

アレクサスが指摘したように、SCPは素晴らしい選択肢です。別のオプションは、Unix/Linuxのrsync(ほとんどすべてのUnixベースのマシンで利用可能)です。これは、バックアップに頻繁に使用されるユーティリティです。

2つのサーバー、abc.comとxyz.com間で転送する場合:

rsync -avzPe ssh [email protected]:/source/ /destination/on/abc

より実用的な例:

rsync -avzPe ssh [email protected]:~/public_html/ ~/public_html/

いくつかの注意:上記の例では、サーバーにログインしていると仮定していますabc.com。他の方法を使用する場合は、引数を切り替えます。ユーザー(この場合は(admin)も適切なSSHアクセスが必要です。最後に、私が使用したフラグは必ずしも機能するものだけではなく、私が使用する傾向のあるものです。技術的には、-vおよび-Pなしで行うことができます。有用性の低いコンソール出力が表示されるだけです。

1
Dan Simmons

移行元サーバーへのSSHアクセスがある場合、ログインしてftpコマンドを使用して、移行先サーバーとのftpセッションを開始できます。コマンドラインを使用してftpコマンドを入力する必要がありますが、それほど難しくはなく、オンラインでチュートリアルを見つけることができます。例: http://linux.about.com/od/commands/l/blcmdl1_ftp.htm

1
Ewan Heming

SSHアクセスがある場合、NIX tarコマンド(圧縮)を使用し、scpを使用して新しいホスティングを介して転送し、再びtarを使用して圧縮を解除し、バックアップのためにローカルドライブにコピーを保持するのが最善の方法です。

1
alexus