Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I'm trying to download about 20GB of data with ftp with my personal account (no scp available and taring is not possible).

I'm using the following standard command:

 wget -m ftp://user:pass@host.com/db/

It works some time and then fails while authenticating for a download.

When trying to connect with a ftp client to the server, it will respond with:

530 Sorry, the maximum number of clients (15) for this user are already connected.

So it seems like wget opens many connections. Is it possible to use only one connection to the server with wget?

share|improve this question

3 Answers 3

up vote 3 down vote accepted

By default, wget uses passive FTP, i.e., it uses one control connection and opens a new one for every file transfer.

In active FTP, the server opens the necessary connections. If you can accept incoming connections, that's the preferred way of transferring files via FTP.

wget only downloads one file at a time, so it should only use two connections. It looks like the connections don't get closed properly. Try if setting the transfer mode to "active" fixes that.

To enable active FTP, use the --no-passive-ftp switch.

share|improve this answer

I think wget just works that way. In the past when I needed to mirror stuff over FTP I have used lftp.

share|improve this answer

wget doesn't do any parallelism, but connections might drop and be counted by the server for a while.

--retry-connrefused --waitretry=30 should help. I'll let you look at wget(1) if those are not clear.

share|improve this answer

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.