Rtorrent - rTorrent is a text-based ncurses BitTorrent client which is light on resources and very capable. I use this application all of the time on my older laptop. Follow these steps to install rtorrent in OpenBSD 5.2.
"#" means type this command as root.
"$" means type this command as user.
This is the output you will see when installing it.
# export PKG_PATH=ftp://ftp5.usa.openbsd.org/pub/OpenBSD/5.2/packages/i386/
# pkg_add rtorrent
rtorrent-0.8.9v0:libiconv-1.14: ok
rtorrent-0.8.9v0:gettext-0.18.1p3: ok
rtorrent-0.8.9v0:libidn-1.25: ok
rtorrent-0.8.9v0:curl-7.26.0: ok
rtorrent-0.8.9v0:libsigc++-2.2.10: ok
rtorrent-0.8.9v0:libtorrent-0.12.9v0: ok
rtorrent-0.8.9v0: ok
Look in /usr/local/share/doc/pkg-readmes for extra documentation.
#
Download/copy/type the following .rtorrent.rc and save it to your home directory. (rc.torrent can be copied in full from the end of this page.)
$ cd ~/
$ /home/jason/.rtorrent.rc
Now set up your directories.
$ mkdir downloads
$ mkdir torrents
$ mkdir watch
$ mkdir .session
Start a new tmux session with rtorrent. This allows you
To exit and reenter your session whenever you would like.
$ tmux new rtorrent
Now from within tmux, use key combo "ctrl-b d" to detach your screen. You should now be at the command line.
To reattach to your session type
$ tmux attach
Enjoy rtorrent!
~~~~~~~~~~~copy everything below this line~~~~~~~~~~~~~~~~~~~~~~~~~
# This is an example resource file for rTorrent. Copy to# ~/.rtorrent.rc and enable/modify the options as needed. Remember to
# uncomment the options you wish to enable.
#
# Great wiki for rtorrent info.
# https://wiki.archlinux.org/index.php/RTorrent
# http://libtorrent.rakshasa.no/rtorrent/rtorrent.1.html
# Maximum and minimum number of peers to connect to per torrent.
min_peers = 40
max_peers = 100
# Same as above but for seeding completed torrents (-1 = same as downloading)
min_peers_seed = 10
max_peers_seed = 50
# Maximum number of simultaneous uploads per torrent.
max_uploads = 15
# Global upload and download rate in KiB. "0" for unlimited.
download_rate = 20
upload_rate = 5
# Default directory to save the downloaded torrents.
directory = /home/jason/downloads/torrents/
# Default session directory. Make sure you don't run multiple instance
# of rtorrent using the same session directory. Perhaps using a
# relative path?
session = /home/jason/downloads/.session
# Watch a directory for new torrents, and stop those that have been
# deleted.
schedule = watch_directory,5,5,load_start=/home/jason/downloads/watch/*.torrent
schedule = untied_directory,5,5,stop_untied=
schedule = tied_directory,5,5,start_tied=
# Close torrents when diskspace is low.
schedule = low_diskspace,5,60,close_low_diskspace=1000M
# Stop torrents when reaching upload ratio in percent,
# when also reaching total upload in bytes, or when
# reaching final upload ratio in percent.
# example: stop at ratio 2.0 with at least 200 MB uploaded, or else ratio 20.0
#schedule = ratio,60,60,"stop_on_ratio=200,200M,2000"
# The ip address reported to the tracker.
#ip = 127.0.0.1
#ip = rakshasa.no
# The ip address the listening socket and outgoing connections is
# bound to.
#bind = 127.0.0.1
#bind = rakshasa.no
# Port range to use for listening.
port_range = 6890-6999
# Start opening ports at a random position within the port range.
port_random = yes
# Check hash for finished torrents. Might be useful until the bug is
# fixed that causes lack of disk space not to be properly reported.
# yes/no
check_hash = yes
# Set whatever the client should try to connect to UDP trackers.
use_udp_trackers = yes
# Alternative calls to bind and ip that should handle dynamic ip's.
#schedule = ip_tick,0,1800,ip=rakshasa
#schedule = bind_tick,0,1800,bind=rakshasa
# Encryption options, set to none (default) or any combination of the following:
# allow_incoming, try_outgoing, require, require_RC4, enable_retry, prefer_plaintext
#
# The example value allows incoming encrypted connections, starts unencrypted
# outgoing connections but retries with encryption if they fail, preferring
# plaintext to RC4 encryption after the encrypted handshake
#
encryption = allow_incoming,try_outgoing,require
# Enable DHT support for trackerless torrents or when all trackers are down.
# May be set to "disable" (completely disable DHT), "off" (do not start DHT),
# "auto" (start and stop DHT as needed), or "on" (start DHT immediately).
# The default is "off". For DHT to work, a session directory must be defined.
dht = auto
# UDP port to use for DHT.
dht_port = 6881
# Enable peer exchange (for torrents not marked private)
peer_exchange = yes
#
# Do not modify the following parameters unless you know what you're doing.
#
# Hash read-ahead controls how many MB to request the kernel to read
# ahead. If the value is too low the disk may not be fully utilized,
# while if too high the kernel might not be able to keep the read
# pages in memory thus end up trashing.
#hash_read_ahead = 10
# Interval between attempts to check the hash, in milliseconds.
#hash_interval = 100
# 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.
#hash_max_tries = 10