Downloading all files from an FTP Server

Navarr picture Navarr · Jun 9, 2010 · Viewed 85.5k times · Source

I need to download everything from an FTP server to hosting on a different server. I have shell access only to the server I'm downloading the files to. How, using the Linux FTP command, can I download every file, creating the directories needed for them in the process?

Answer

Emil Vikström picture Emil Vikström · Jun 9, 2010

Use wget in this manner (m for mirroring):

wget -m ftp://username:[email protected]

If your username or password contains special characters, you may need to use the format:

wget -m --user=username --password=password ftp://ip.of.old.host

Alternatively, I found this guide which shows you how to do it using ncftp in Debian. You will require root access to the new server if ncftp is not installed already.

In short:

sudo apt-get install ncftp
ncftpget –T –R –v –u "ftpuser" ftp.nixcraft.net /home/vivek/backup /www-data