&dhucpackage; &dhsection;

&dhpackage;

download files using a scatter-gather network

          btdownloadheadless options URL

          btdownloadheadless options filename

          btdownloadcurses options URL

          btdownloadcurses options filename

          btdownloadgui options URL

          btdownloadgui options filename

          btlaunchmany options directory

          btlaunchmanycurses options directory

## DESCRIPTION

This manual page documents briefly the options available to the &dhpackage; commands.

This manual page was written for the &debian; distribution because the original program does not have a manual page.

`btdownloadheadless`, `btdownloadcurses`, `btdownloadgui`, `btlaunchmany`, and `btlaunchmanycurses` are all programs that allow a user to download files using bittorrent, a peer to peer, scatter-gather network protocol. They all share a common set of options, shown below. For more information on how to run them, and their program-specific options, see their individual man pages.

## OPTIONS

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

`--max_uploads `number``

- the maximum `number` of uploads to allow at once (defaults to 7)

`--keepalive_interval `seconds``

- the number of `seconds` to pause between sending keepalives (defaults to 120.0)

`--download_slice_size `bytes``

- the number of `bytes` to query for per request (defaults to 16384)

`--upload_unit_size `bytes``

- when limiting the upload rate, the number of `bytes` to send at a time (defaults to 1460)

`--request_backlog `number``

- the maximum `number` of requests to keep in a single pipe at once (defaults to 10)

`--max_message_length `length``

- the maximum `length` prefix encoding you'll accept over the wire. Larger values will get the connection dropped. (defaults to 8388608)

`--ip `ip``

- the `ip` to report you have to the tracker (defaults to '')

`--minport `port``

- the minimum `port` to listen on (defaults to 10000)

`--maxport `port``

- the maximum `port` to listen on (defaults to 60000)

`--random_port` 0|1

- whether to choose randomly inside the port range (instead of counting up linearly from min to max) (defaults to 1)

`--responsefile `file``

- the `file` the server response was stored in, as an alternative to --url. If this option is used, no filename or URL should be present on the command line. (defaults to '')

`--url `URL``

- the `URL` to get the torrent file from, as an alternative to --responsefile. If this option is used, no filename or URL should be present on the command line. (defaults to '')

`--crypto_allowed` 0|1

- whether to allow the client to accept encrypted connections. (defaults to 1 if python-crypto is installed, 0 otherwise)

`--crypto_only` 0|1

- whether to only create or allow encrypted connections. (defaults to 0)

`--crypto_stealth` 0|1

- whether to prevent all non-encrypted connection attempts; will result in an effectively firewalled state on older trackers. (defaults to 0)

`--selector_enabled` 0|1

- whether to enable the file selector and fast resume function (defaults to 1)

`--expire_cache_data `days``

- the number of `days` after which you wish to expire old cache data (0 = disabled) (defaults to 10)

`--priority` -1|0|1|2[,-1|0|1|2 ...]

- a list of file priorities, separated by commas. There must be one per file. 0 = highest, 1 = normal, 2 = lowest, -1 = download disabled. Order is based on the file/torrent order as shown by btshowmetainfo. For example, to download only the third of four files use: --priority -1,-1,2,-1 (defaults to '')

`--saveas `filename``

- the local `filename` to save the file as, null indicates query user (defaults to '')

`--timeout `seconds``

- the number of `seconds` to wait between closing sockets which nothing has been received on (defaults to 300.0)

`--timeout_check_interval `seconds``

- the number of `seconds` to wait between checking if any connections have timed out (defaults to 60.0)

`--max_slice_length `length``

- the maximum `length` slice to send to peers, larger requests are ignored (defaults to 131072)

`--max_rate_period `seconds``

- the maximum number of `seconds` to use in guessing what the current rate estimate represents (defaults to 20.0)

`--bind `ip`|`hostname`[,`ip`|`hostname` ...]`

- a comma-separated list of `ips` and `hostnames` to bind to locally (defaults to '')

`--ipv6_enabled` 0|1

- whether to allow the client to connect to peers via IPv6 (defaults to 0)

`--ipv6_binds_v4` 0|1

- set if an IPv6 server socket won't also field IPv4 connections (defaults to 0)

`--upload_rate_fudge `seconds``

- the time equivalent in `seconds` of writing to kernel-level TCP buffer, for rate adjustment (defaults to 5.0)

`--tcp_ack_fudge `overhead``

- how much TCP ACK download `overhead` to add to upload rate calculations (0 = disabled) (defaults to 0.029999999999999999)

`--display_interval `seconds``

- the number of `seconds` between updates of displayed information (defaults to 0.5)

`--rerequest_interval `seconds``

- the number of `seconds` between requesting more peers (defaults to 300)

`--min_peers `number``

- make tracker requests every --rerequest_interval until this `number` has been reached, then switch to the standard longer interval (defaults to 20)

`--http_timeout `seconds``

- the number of `seconds` to wait before assuming that an http connection has timed out (defaults to 60)

`--max_initiate `number``

- the `number` of peers at which to stop initiating new connections (defaults to 40)

`--check_hashes` 0|1

- whether to check hashes on disk (defaults to 1)

`--max_upload_rate `kB/s``

- the maximum `kB/s` to upload at (0 = no limit, -1 = automatic) (defaults to 0)

`--max_download_rate `kB/s``

- the maximum `kB/s` to download at (0 = no limit) (defaults to 0)

`--alloc_type` normal|background|pre-allocate|sparse

- the allocation type (may be 'normal', 'background', 'pre-allocate' or 'sparse') (defaults to 'normal')

`--alloc_rate `MiB/s``

- the rate (in `MiB/s`) to allocate space at using background allocation (defaults to 2.0)

`--buffer_reads` 0|1

- whether to buffer disk reads (defaults to 1)

`--write_buffer_size `space``

- the maximum amount of `space` to use for buffering disk writes (in megabytes, 0 = disabled) (defaults to 4)

`--breakup_seed_bitfield` 0|1

- whether to send an incomplete bitfield and then 'have' messages, in order to get around stupid ISP manipulation (defaults to 1)

`--snub_time `seconds``

- the number of `seconds` to wait for data to come in over a connection before assuming it's semi-permanently choked (defaults to 30.0)

`--spew` 0|1

- whether to display diagnostic info to stdout. This option is not very useful when using the curses or gui interfaces. (defaults to 0)

`--rarest_first_cutoff `number``

- the `number` of downloads at which to switch from random to rarest first (defaults to 2)

`--rarest_first_priority_cutoff `number``

- the `number` of peers which need to have a piece before other partials take priority over rarest first (defaults to 5)

`--min_uploads `number``

- the `number` of uploads to fill out to with extra optimistic unchokes (defaults to 4)

`--max_files_open `number``

- the maximum `number` of files to keep open at a time, 0 means no limit (defaults to 50)

`--round_robin_period `seconds``

- the number of `seconds` between the client switching upload targets (defaults to 30)

`--super_seeder` 0|1

- whether to use special upload-efficiency-maximizing routines (only for dedicated seeds) (defaults to 0)

`--security` 0|1

- whether to enable extra security features intended to prevent abuse (defaults to 1)

`--max_connections `number``

- the absolute maximum `number` of peers to connect with (0 = no limit) (defaults to 0)

`--auto_kick` 0|1

- whether to allow the client to automatically kick/ban peers that send bad data (defaults to 1)

`--double_check` 0|1

- whether to double-check data being written to the disk for errors (may increase CPU load) (defaults to 1)

`--triple_check` 0|1

- whether to thoroughly check data being written to the disk (may slow disk access) (defaults to 0)

`--lock_files` 0|1

- whether to lock files the client is working with (defaults to 1)

`--lock_while_reading` 0|1

- whether to lock access to files being read (defaults to 0)

`--auto_flush `minutes``

- the number of `minutes` between automatic flushes to disk (0 = disabled) (defaults to 0)

`--dedicated_seed_id `code``

- the `code` to send to a tracker, identifying as a dedicated seed (defaults to '')

`--save_options` 0|1

- whether to save the current options as the new default configuration for the current program (defaults to 0)

## SEE ALSO

The single torrent downloaders:

btdownloadheadless

1,

btdownloadcurses

1,

btdownloadgui

1.

The multiple torrent downloaders:

bittorrent-multi-downloader

1,

btlaunchmany

1,

btlaunchmanycurses

1.

The bittorrent tracker:

bttrack

1.

The torrent file creators:

btmakemetafile

1,

btmaketorrentgui

1,

btcompletedir

1,

btcompletedirgui

1.

The torrent file modifiers:

btcopyannounce

1,

btreannounce

1,

btrename

1,

btsethttpseeds

1.

The torrent file displayer:

btshowmetainfo

1.

## AUTHOR

This manual page was written by &dhusername; <&dhemail;> (based on the original man pages written by Micah Anderson <micah@debian.org>) for the &debian; system (but may be used by others). Permission is granted to copy, distribute and/or modify this document under the terms of the &gnu; General Public License, Version 2 or any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.