Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

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

share|improve this question
    
are both servers unix or linux? if so, just use the scp command to copy files, no need to make this complicated. –  SpacemanSpiff Jan 4 '11 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 '11 at 16:40
add comment

4 Answers

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.)

share|improve this answer
add comment

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.

share|improve this answer
add comment

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.

share|improve this answer
add comment

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

share|improve this answer
    
i really don't know the command , can you please tell that ? –  Hunt Jan 4 '11 at 16:57
1  
ssh: unixhelp.ed.ac.uk/CGI/man-cgi?ssh+1 (on windows you could use putty), ftp: unixhelp.ed.ac.uk/CGI/man-cgi?ftp –  kasterma Jan 4 '11 at 17:03
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.