Files
rtorrent/doc/rtorrent.1.xml
T
rakshasa 2c5151def5 * Checked and fixed calls to priority_queue_insert to make sure they
don't end up in an infinite loop.

* Fixed a bug that caused failed chunk downloads to result in
ChunkSelector's forgetting to download them again.

* Added note to the man page about the schedule and schedule_remove
setting.

* Display the number of failed chunks in the client.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@612 e378c898-3ddf-0310-93e7-cc216c733640
2005-12-20 19:12:15 +00:00

541 lines
14 KiB
XML

<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN">
<refentry id="rtorrent">
<refmeta>
<refentrytitle>rtorrent</refentrytitle>
<manvolnum>1</manvolnum>
<refmiscinfo class="date">June 25th, 2005</refmiscinfo>
<refmiscinfo class="source"></refmiscinfo>
<refmiscinfo class="title">BitTorrent client for ncurses</refmiscinfo>
</refmeta>
<refnamediv>
<refname>rtorrent</refname>
<refpurpose>a BitTorrent client for ncurses</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>rtorrent</command>
<arg choice="opt">-h</arg>
<arg choice="opt">-o key1=opt1,...</arg>
<arg choice="opt" rep="repeat">URL | FILE</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<para>
<command>rtorrent</command> is a BitTorrent client for ncurses,
using the <emphasis>libtorrent</emphasis> library. The client
and library is written in C++ with emphasis on speed and
efficiency, while delivering equivalent features to those found
in GUI based clients in an ncurses client.
</para>
</refsect1>
<refsect1>
<title>KEYBOARD CONTROL</title>
<para>
</para>
<refsect2>
<title>Global Keys</title>
<variablelist>
<varlistentry>
<term>^q</term>
<listitem><para>
Initiate shutdown, press again to force the shutdown and
skip sending the stop signal to trackers.
</para></listitem>
</varlistentry>
<varlistentry>
<term>up | down</term>
<listitem><para>
Select item.
</para></listitem>
</varlistentry>
<varlistentry>
<term><-</term>
<listitem><para>
Go back to the previous screen.
</para></listitem>
</varlistentry>
<varlistentry>
<term>a | s | d</term>
<listitem><para>
Increase the upload throttle by 1/5/50 KB.
</para></listitem>
</varlistentry>
<varlistentry>
<term>A | S | D</term>
<listitem><para>
Increase the download throttle by 1/5/50 KB.
</para></listitem>
</varlistentry>
<varlistentry>
<term>z | x | c</term>
<listitem><para>
Decrease the upload throttle by 1/5/50 KB.
</para></listitem>
</varlistentry>
<varlistentry>
<term>Z | X | C</term>
<listitem><para>
Decrease the download throttle by 1/5/50 KB.
</para></listitem>
</varlistentry>
</variablelist>
</refsect2>
<refsect2>
<title>Main View Keys</title>
<variablelist>
<varlistentry>
<term>-></term>
<listitem><para>
View download.
</para></listitem>
</varlistentry>
<varlistentry>
<term>^s</term>
<listitem><para>
Start download.
</para></listitem>
</varlistentry>
<varlistentry>
<term>^d</term>
<listitem><para>
Stop an active download, or remove a stopped download.
</para></listitem>
</varlistentry>
<varlistentry>
<term>^r</term>
<listitem><para>
Initiate hash check of torrent.
</para></listitem>
</varlistentry>
<varlistentry>
<term>backspace</term>
<listitem><para>
Add torrent using an URL or file path. Use
<emphasis>tab</emphasis> to view directory content and do
auto-complete.
</para></listitem>
</varlistentry>
<varlistentry>
<term>l</term>
<listitem><para>
View log. Exit by pressing the space-bar.
</para></listitem>
</varlistentry>
</variablelist>
</refsect2>
<refsect2>
<title>Download View Keys</title>
<variablelist>
<varlistentry>
<term>-></term>
<listitem><para>
View torrent file list. Use the space-bar to change the
file priority and <emphasis>*</emphasis> to change the
priority of all files.
</para></listitem>
</varlistentry>
<varlistentry>
<term>1 | 2</term>
<listitem><para>
Adjust max uploads.
</para></listitem>
</varlistentry>
<varlistentry>
<term>3 | 4</term>
<listitem><para>
Adjust min peers.
</para></listitem>
</varlistentry>
<varlistentry>
<term>5 | 6</term>
<listitem><para>
Adjust max peers.
</para></listitem>
</varlistentry>
<varlistentry>
<term>o</term>
<listitem><para>
Display the tracker list. Cycle the trackers in a group
with the space-bar.
</para></listitem>
</varlistentry>
<varlistentry>
<term>p</term>
<listitem><para>
View peer and torrent information.
</para></listitem>
</varlistentry>
<varlistentry>
<term>t | T</term>
<listitem><para>
Initiate tracker request. Use capital T to force the
request, ignoring the "min interval" set by the tracker.
</para></listitem>
</varlistentry>
</variablelist>
</refsect2>
</refsect1>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
<term>-b <replaceable>a.b.c.d</replaceable></term>
<listitem><para>
Bind listening socket and outgoing connections to this
network interface address.
</para></listitem>
</varlistentry>
<varlistentry>
<term>-d <replaceable>directory</replaceable></term>
<listitem><para>
Set the default download directory. Defaults to "./".
</para></listitem>
</varlistentry>
<varlistentry>
<term>-h</term>
<listitem><para>
Display help and exit.
</para></listitem>
</varlistentry>
<varlistentry>
<term>-i <replaceable>a.b.c.d</replaceable></term>
<listitem><para>
Set the address reported to the tracker.
</para></listitem>
</varlistentry>
<varlistentry>
<term>-o key1=opt1,...</term>
<listitem><para>
Set any number of options, see the
SETTINGS section. The options given here
override the resource files.
</para></listitem>
</varlistentry>
<varlistentry>
<term>-p <replaceable>a-b</replaceable></term>
<listitem><para>
Try to open a listening port in the range
<emphasis>a</emphasis> up to and including
<emphasis>b</emphasis>.
</para></listitem>
</varlistentry>
<varlistentry>
<term>-s <replaceable>directory</replaceable></term>
<listitem><para>
Session management will be enabled and the torrent files for
all open downloads will be stored in this directory. Only
one instance of rtorrent should be used with each session
directory, though at the moment no locking is done. An empty
string will disable the session directory.
</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>GENERAL SETTINGS</title>
<para>
</para>
<variablelist>
<varlistentry>
<term>max_peers = <replaceable>value</replaceable></term>
<listitem><para>
Set the maximum number of peers to allow in each download.
</para></listitem>
</varlistentry>
<varlistentry>
<term>min_peers = <replaceable>value</replaceable></term>
<listitem><para>
Set the minimum number of peers to try to connect to in each
download.
</para></listitem>
</varlistentry>
<varlistentry>
<term>max_uploads = <replaceable>value</replaceable></term>
<listitem><para>
Set the maximum number of simultaneous uploads per download.
</para></listitem>
</varlistentry>
<varlistentry>
<term>download_rate = <replaceable>KB</replaceable></term>
<listitem><para>
Set the maximum global download rate.
</para></listitem>
</varlistentry>
<varlistentry>
<term>upload_rate = <replaceable>KB</replaceable></term>
<listitem><para>
Set the maximum global upload rate.
</para></listitem>
</varlistentry>
<varlistentry>
<term>bind = <replaceable>a.b.c.d</replaceable></term>
<listitem><para>
Bind listening socket and outgoing connections to this
network interface address.
</para></listitem>
</varlistentry>
<varlistentry>
<term>ip = <replaceable>a.b.c.d</replaceable></term>
<listitem><para>
Set the address reported to the tracker.
</para></listitem>
</varlistentry>
<varlistentry>
<term>port_range = <replaceable>a-b</replaceable></term>
<listitem><para>
Try to open a listening port in the range
<emphasis>a</emphasis> up to and including
<emphasis>b</emphasis>.
</para></listitem>
</varlistentry>
<varlistentry>
<term>port_random = <replaceable>yes | no</replaceable></term>
<listitem><para>
Open the listening port at a random position in the port range.
</para></listitem>
</varlistentry>
<varlistentry>
<term>check_hash = <replaceable>yes | no</replaceable></term>
<listitem><para>
Perform hash check on finished downloads.
</para></listitem>
</varlistentry>
<varlistentry>
<term>directory = <replaceable>directory</replaceable></term>
<listitem><para>
Set the default download directory. Defaults to "./".
</para></listitem>
</varlistentry>
<varlistentry>
<term>session = <replaceable>directory</replaceable></term>
<listitem><para>
Session management will be enabled and the torrent files for
all open downloads will be stored in this directory. Only
one instance of rtorrent should be used with each session
directory, though at the moment no locking is done. An empty
string will disable the session directory.
</para></listitem>
</varlistentry>
<varlistentry>
<term>http_proxy = <replaceable>url</replaceable></term>
<listitem><para>
Use a http proxy. Use an empty string to disable.
</para></listitem>
</varlistentry>
<varlistentry>
<term>encoding_list = <replaceable>encoding</replaceable></term>
<listitem><para>
Add a preferred filename encoding to the list. The encodings
are attempted in the order they are inserted, if none match
the torrent default is used.
</para></listitem>
</varlistentry>
<varlistentry>
<term>schedule = <replaceable>id</replaceable>,<replaceable>start</replaceable>,<replaceable>interval</replaceable>,<replaceable>command</replaceable></term>
<listitem><para>
Call <emphasis>command</emphasis> every <emphasis>interval</emphasis>
seconds, starting from <emphasis>start</emphasis>. An
<emphasis>interval</emphasis> of zero calls the task once, while a
<emphasis>start</emphasis> of zero calls it immediately. Currently
<emphasis>command</emphasis> is forwarded to the option handler.
</para></listitem>
</varlistentry>
<varlistentry>
<term>schedule_remove = <replaceable>id</replaceable></term>
<listitem><para>
Delete <emphasis>id</emphasis> from the scheduler.
</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1>
<title>ADVANCED SETTINGS</title>
<para>
This list contains settings users shouldn't need to touch.
</para>
<variablelist>
<varlistentry>
<term>hash_read_ahead = <replaceable>MB</replaceable></term>
<listitem><para>
Configure how far ahead we ask the kernel to read when doing
hash checking. The hash checker uses madvise(...,
MADV_WILLNEED) for the requests.
</para></listitem>
</varlistentry>
<varlistentry>
<term>hash_interval = <replaceable>ms</replaceable></term>
<listitem><para>
Interval between attempts to check the hash when the chunk
is not in memory, in milliseconds.
</para></listitem>
</varlistentry>
<varlistentry>
<term>hash_max_tries = <replaceable>tries</replaceable></term>
<listitem><para>
Number of attempts to check the hash while using the mincore
status, before forcing. Overworked systems might need lower
values to get a decent hash checking rate.
</para></listitem>
</varlistentry>
<varlistentry>
<term>max_open_files = <replaceable>value</replaceable></term>
<listitem><para>
Number of files to simultaneously keep open. Libtorrent
dynamically opens and closes files when mapping files to
memory. Defaults to 128.
</para></listitem>
</varlistentry>
<varlistentry>
<term>max_open_sockets = <replaceable>value</replaceable></term>
<listitem><para>
Number of sockets to simultaneously keep open. This value is
set to be <emphasis>sysconf(_SC_OPEN_MAX) - 256</emphasis>
at startup. This gives the client 128 sockets to use as it
wishes.
</para></listitem>
</varlistentry>
<varlistentry>
<term>umask = <replaceable>0644</replaceable></term>
<listitem><para>
Set the umask for this process, which is applied to all
files created by the program.
</para></listitem>
</varlistentry>
<!-- <varlistentry> -->
<!-- <term>throttle_interval = <replaceable>ms</replaceable></term> -->
<!-- <listitem><para> -->
<!-- Interval between throttle ticks in milli-seconds, must be -->
<!-- between <emphasis>1-5000</emphasis> and defaults to -->
<!-- <emphasis>1000</emphasis>. Shorter intervals will cause less -->
<!-- bandwidth usage spikes while requiring more CPU resources. -->
<!-- </para></listitem> -->
<!-- </varlistentry> -->
<!-- <varlistentry> -->
<!-- <term>tracker_dump = <replaceable>yes | no</replaceable></term> -->
<!-- <listitem><para> -->
<!-- Dump data received from trackers to the files -->
<!-- "./tracker_dump.*". -->
<!-- </para></listitem> -->
<!-- </varlistentry> -->
</variablelist>
</refsect1>
<refsect1>
<title>AUTHORS</title>
<para>
<simplelist type="vert">
<member>Jari "Rakshasa" Sundell <email>jaris@ifi.uio.no</email></member>
</simplelist>
</para>
</refsect1>
</refentry>