Main View Keys
Use Arrow Key to navigate on related torrent.
stop_on_ratio = min_ratio,min_upload,max_ratio
schedule = ratio,60,60,"stop_on_ratio=200,50M,300"
The “stop_on_ratio” command can be scheduled to stop torrents that have reached a specified upload ratio.
The above example will stop a torrent once it has uploaded 200% of the torrent size,
unless less than 50MB has been uploaded and the ratio is below 300%.
Use shift-I to make a torrent ignore this and other commands.
# Default group for ratio handling.
group.seeding.view group.seeding.ratio.command group.seeding.ratio.disable group.seeding.ratio.enable group.seeding.ratio.max group.seeding.ratio.max.set group.seeding.ratio.min group.seeding.ratio.min.set group.seeding.ratio.upload group.seeding.ratio.upload.set
# The above commands can be called through:
ratio.disable ratio.enable ratio.max ratio.max.set ratio.min ratio.min.set ratio.upload ratio.upload.set
The 'group.seeding.view' variable points to the 'seeding' view, which contains all seeding downloads,
and the default 'ratio.command' closes the download. To enabled or disable the ratio handling for the group,
call the 'enable' and 'disable' commands which automatically adds it to the scheduler.
Use the 'max', 'min' and 'upload' variables as in the old version.
# Enable the default ratio group.
# Change the limits, the defaults should be sufficient.
ratio.min.set=100 ratio.max.set=300 ratio.upload.set=20M
# Changing the command triggered when the ratio is reached.
system.method.set = group.seeding.ratio.command, d.close=, d.erase=
If you wish to specify different ratio's for different watch directories, do the following:
Add new views. You may find out what downloads they contain through
'ui.current_view.set=group_1' command or XMLRPC calls.
view_add = view_group_1
# Make the views persist across sessions.
view.persistent = view_group_1
# Create new groups, 'group.insert = <name>, <view>'.
group.insert = group_1, view_group_1 group.group_1.ratio.enable= group.group_1.ratio.min.set=100 group.group_1.ratio.max.set=300 group.group_1.ratio.upload.set=20M
Optionally you may create a persistent view group directly. Note
that the view name is the same as the group name.
group.insert_persistent_view = group_2 group.group_2.ratio.enable= group.group_2.ratio.min.set=300 group.group_2.ratio.max.set=0
Downloads need to be inserted into the view with the 'view.set_visible'
command. Note that extra parameters to 'load' are commands called
with the newly created download as the target.
schedule = watch_directory_1,5,10,"load_start_verbose=foo_1/*.torrent, view.set_visible=view_group_1" schedule = watch_directory_2,5,10,"load_start_verbose=foo_2/*.torrent, view.set_visible=group_2"
Every day “throttle_1” gets triggered at 01:00 and sets the download rate to unlimited,
while “throttle_2” sets it to 25kb at 05:00.
Using this the client may be made to perform a somewhat crude form of bandwidth scheduling.
schedule = throttle_1,01:00:00,24:00:00,download_rate=0 schedule = throttle_2,05:00:00,24:00:00,download_rate=25
Not 100% but following you two steps avoid capping from ISP,
according to manual you can encrypt your transfer and request encryption only
If Encryptiong is successfully enabled you can avoid ISP to capping on packets. which make you partially secure.
Enable following line in your .rtorrent.rc
This will change ports on every “restart” of the rtorrent.
port_range specify any high number port range - many be bigger than 11K.
Also enable random port.
port_range = 12000-12999 port_random = yes
Point to a directory where rTorrent will save the torrent files. You
may also use relative paths if you want different session
directories depending on where you execute rtorrent.
session = ~/Download/session
Watch a directory for new torrents, restart torrents that have been
copied back and stop those that have been deleted.
schedule = watch_directory,10,10,load_start=~/Download/watch/*.torrent schedule = tied_directory,10,10,start_tied= schedule = untied_directory,10,10,close_untied=
Watch another directory with a different destination. (0.7.7+)
schedule = watch_directory_2,10,10,"load_start=~/Download/watch_stuff/*.torrent,d.set_directory=~/Download/stuff/"
When the torrent finishes, it executes “mv -n <base_path> ~/Download/” and then sets the destination directory to “~/Download/”. (0.8.4+)
on_finished = move_complete,"d.set_directory=~/Download/ ;execute=mv,-u,$d.get_base_path=,~/Download/" # On MacOSX and *BSD. on_finished = move_complete,"d.set_directory=~/Download/ ;execute=mv,-n,$d.get_base_path=,~/Download/"
For versions 0.7.7 to 0.8.3 use this:
on_finished = move_complete,"execute=mv,-u,$d.get_base_path=,~/Download/ ;d.set_directory=~/Download/" # On MacOSX and *BSD. on_finished = move_complete,"execute=mv,-n,$d.get_base_path=,~/Download/ ;d.set_directory=~/Download/"
This is the current profile that I am using for my rtorrent client. Though most is using the defaults, there are some decent features.
# 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. safe_sync = yes # 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 simultanious uploads per torrent. #max_uploads = 15 # Global upload and download rate in KiB. "0" for unlimited. download_rate = 2000 upload_rate = 750 # Default directory to save the downloaded torrents. directory = /media/harddisk3/home/jason/images2 # Default session directory. Make sure you don't run multiple instance # of rtorrent using the same session directory. Perhaps using a # relative path? session = ~/rsession # Watch a directory for new torrents, and stop those that have been # deleted. schedule = watch_directory,5,5,load_start=/media/harddisk3/home/jason/images2/*.torrent #schedule = untied_directory,5,5,stop_untied= # Close torrents when diskspace is low. schedule = low_diskspace,5,60,close_low_diskspace=100M # 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 = no # Check hash for finished torrents. Might be usefull until the bug is # fixed that causes lack of diskspace not to be properly reported. #check_hash = no # Set whetever 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,enable_retry,prefer_plaintext # 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 = off # 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