FTPサーバーから別のサーバーでホストするまですべてをダウンロードする必要があります。ファイルをダウンロードしているサーバーにのみシェルにアクセスできます。 Linux FTPコマンドを使用して、すべてのファイルをダウンロードし、プロセスで必要なディレクトリを作成するにはどうすればよいですか?
wget
をこの方法で使用します(ミラーリングの場合はm):
wget -m ftp://username:[email protected]
ユーザー名またはパスワードに特殊文字が含まれている場合は、次の形式を使用する必要があります。
wget -m --user=username --password=password ftp://ip.of.old.Host
あるいは、Debianでncftpを使用してそれを行う方法を示す このガイド を見つけました。 ncftpがまだインストールされていない場合、新しいサーバーへのルートアクセスが必要になります。
要するに:
Sudo apt-get install ncftp
ncftpget –T –R –v –u "ftpuser" ftp.nixcraft.net /home/vivek/backup /www-data
別の方法は、ftp
を使用することです。 ftpを使用したシェルスクリプトの例を次に示します。
#! /bin/bash
ftp -n << 'EOF'
open ftp.your_ftp_Host.com
quote USER your_username_here
quote PASS your_password_here
cd gets
Prompt no
mget * .
bye
EOF
一部のFTPサーバーでは、名前に.tarまたは.tgzを付けてディレクトリ全体をダウンロードできます。サーバーは、そのディレクトリのアーカイブを作成します。