0

Hi i want to transfer few file (which is very big in size ) from A server to B server via ftp.

I have credentials of Server A's ftp and Server B's ftp - server B is my own server running unix.

so can anyone suggest me the way to direct transfer files via ftp from server A to Server B

2
  • are both servers unix or linux? if so, just use the scp command to copy files, no need to make this complicated. Jan 4, 2011 at 16:37
  • @Tom , m really sorry but i don't have any information about that server A but server B is unix only
    – Hunt
    Jan 4, 2011 at 16:40

4 Answers 4

3

Why not just run (s)ftp on server B? ssh to server B, from the shell start ftp [server A]. Then get the files.

2
0

There is an protocol designed for exactly this task, moving files between two remote FTP servers, it's called FXP (File eXchange Protocol: http://en.wikipedia.org/wiki/File_eXchange_Protocol).

If you servers support it I'd suggest that would be the way to go, any decent FTP client will allow you to initiate the transfer.

Otherwise you can use another machine as an intermediary with an FTP client, but it may be a lot slower (depending on your Internet connection) and will be a lot more bandwidth intensive.

0

Using Secure Copy (scp) will work for you.

scp /path/to/directory/filename remoteuser@serverB:/path/to/directory/filename

On Windows
Use putty in order to login Server A, change to root user, and transfer file using scp command.

On Linux
Login to server A, change to root user, and transfer file using scp command.

0

Assuming you are limited to using ftp as you do not state that you have access using scp, the easiest thing is probably to use a tool such as ncftp on Server B to download the file from server A. Many command line tools exists for this, wget, curl, etc. etc. This could later be automated via cron or some such if you need to do it periodically.

Tools such as scp or rsync with ssh are preferable as they encrypt the traffic and are (arguably) easier to setup for transferring entire directories. So you may want to first test and see if you can (on server B) run something like:

ssh usernameA@serverA # replace usernameA with the username and serverA with name/IP of serverA

and see if you can login. If you can, then you can use scp or rsync. If the link between the systems is slow or unreliable, rsync is preferable, can use command of the form: (on server B to download the file) rsync -a -v -z --partial usernameA@serverA:/path/to/file .

This will rsync the file from serverA as usernameA into your current working directory on serverB, and if the rsync is interrupted, running it a second time will restart from when the connection was lost. -z adds compression, do not use if file already compressed to save a few cpu cycles -a turns on a bunch of options, essentially says to copy things preserving everything about the file(datestamps, etc.)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .