FTPでのサーバー間転送

サーバ間の転送には、通常SFTP接続で次のようなコマンドを実行します。

scp -r ./転送したいディレクトリ/ ユーザー名@転送先アドレス:/転送先ディレクトリ

広告

scp -r ./www/ user@210.111.11.11:/home/user/html/

しかし、SFTPが入っていない古い共有サーバーなどでは、未だにFTPで転送する必要があります。FTPというと、『FFFTP』などのWindows用クライアントソフトで接続するイメージがどうしても強いのですが、ちゃんとシェルで作業できます。

まず、転送先サーバにログインします。
(転送、というよりFTP接続してダウンロードするので。)

ログインしたらFTPコマンドで対象サーバ(oldserver.co.jp)にログイン。

ftp oldserver.co.jp

接続に成功すると、ユーザー名、パスワードの順に対話型で入力します。

Name (newserver.co.jp:currentuser): ftpuser
331 Password required for ftpuser.
Password:
230 User ftpuser logged in.

CD、lsなどのコマンドはTelnetやSFTPと共通なので、目的のディレクトリに移動したら、getコマンドでファイルを転送(最初のログインサーバにダウンロード)します。

get 対象ファイル 保存先

get ./images/ ./imagesbackup/

保存先を省略すると、FTP接続するときにいたディレクトリに保存されます。ファイル名が複数あるときはgetではなくmgetを使います。

逆にログイン先のサーバーからアップロードするときはput、mputを使います。

これでファイルの転送はOKなんですが、ディレクトリごとのコピーはできません…。
ツールを使うしかありません。

About: dacelo


2 thoughts on “FTPでのサーバー間転送”

  1. Pingback: Masato Inomata

Leave a Reply

Your email address will not be published. Required fields are marked *