Scroll to navigation



bittorrent-downloader - download files using a scatter-gather network


btdownloadheadless [ option ... ] URL
btdownloadheadless [ option ... ] filename
btdownloadcurses [ option ... ] URL
btdownloadcurses [ option ... ] filename
btdownloadgui [ option ... ] URL
btdownloadgui [ option ... ] filename


This manual page documents briefly the btdownloadheadless, btdownloadcurses, and btdownloadgui commands. This manual page was written for the Debian distribution because the original program does not have a manual page.

These are all programs that allow a user to download files using bittorrent, a peer to peer, scatter-gather network protocol. They all have the same options.


These programs follow the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below.

treat filename as a file which the server response was stored in. If this option is used, no filename or URL should be present on the command line.
retrieve the torrent info file from url. If this option is used, no filename or URL should be present on the command line.
report ip as your IP to the tracker
bind to ip instead of the default
set portnum as the minimum port to listen on, counts up if unavailable (default 6881)
set portnum as the maximum port to listen on (default 6889)
store the downloaded file to filename, instead of querying user (gui) or using the filename stored in the torrent info file
Only allow num uploads at once (default 4)
maximum rate to upload at in kilobytes, 0 means no limit (default 0)
pause secs seconds between sending keepalives (default 120.0)
query for bytes bytes per request (default 32768)
keep num requests in a single pipe at once (default 5)
set bytes to the maximum length prefix encoding you'll accept over the wire - larger values get the connection dropped (default 8388608)
wait secs before closing sockets which nothing has been receieved on (default 300.0)
check whether connections have timed out every secs seconds (default 60.0)
requests from peers larger than bytes bytes are ignored (default 131072)
connections that pause longer than secs seconds are given reduced rate (default 15.0)
set secs to the maximum amount of time to guess the current rate estimate represents (default 20.0)
set the time equivalent of writing to kernel-level TCP buffer to secs (default 5.0)
update displayed information every secs seconds (default 0.1)
request more peers every secs seconds (default 300)
do not rerequest if we have num peers already (default 20)
wait secs seconds before assuming a http connection has timed out (default 60)
wait secs seconds for data to come in over a connection before assuming it's semi-permanently choked (default 30.0)
whether to display diagnostic info to stdout. This option is not useful when using btdownloadcurses or btdownloadgui. (default 0)
stop initiating new connections when we have num peers (default 40)
whether to check hashes on disk (defaults to 1)
whether to report to the user that hash failuers occur (non-fatal, common error) (default 0)
the number of peers which need to have a piece before other partials take priority over rarest first (default 3)


bttrack(1), btmakemetafile(1), btlaunchmany(1).

More information on the BitTorrent protocol used for distributing files is available at

You will also find a full description on the advantages of the protocol in the academic paper Incentives Build Robustness in BitTorrent available at


This manual page was written by Michael Janssen <>, for the Debian GNU/Linux system (but may be used by others).

Sep 24 2003