I have used most of the torrent clients out there for Windows ( utorrent , vuze , Mainline , bittornado , etc) and I have also used most of the torrent clients available for Linux(Transmission , Deluge , halite , Ktorrent , qbittorrent , rtorrent) . Out of all these the one that I used most of the times in Utorrent on Windows XP . There is no match for Utorrent on Windows XP or any other Windows based operating System because its light and fast . While using Windows I having Ubuntu installed on other partition . But I never actually used it for using bit-torrent . One day I decided to completely switch to the Linux as I found myself using it most (98%) of the time . I removed the Windows XP and now Ubuntu is the only OS on my machine . As a regular Bittorrent user I felt completely lost as I could not found the proper alternative to utorrent as I was addicted to it and I knew it completely from inside out . Ubuntu came with transmission by default . But I did not liked it much as it was not upto my expectations . Then I tried few others and I found myself settled with the Vuze as I was familiar with it and I was getting decent speeds . But one after an update it started to annoying me , It was eating my memory like a crazy and such a behavior is just not acceptable . So i dumped it and started looking for something else . One day at some forum I read a post about rtorrent and It actually attracted me as I feel quite comfortable with the command line . So I installed it and started playing with it . But my initial experience with it was not so good and it took me about one week to completely understand it and use it efficiently . Now I am using rtorrent on daily basis without any problem and I was never been this much satisfied with a torrent client before . It just blows away every other client with with its speed , efficiency and elegance . I am going to write this tutorial so that others can benefit from my experience and they dont have face the problems that i faced . My this tutorial will be mainly targeted towards Ubuntu users but it will be equally helpful for the users of any other Linux distro . This tutorial is divided into 3 sections i.e. Installation , Configuration and Usage . So here I go :
INSTALLATION :
Installation of rtorrent is very simple , simple follow the following steps
1. For Ubuntu and Debian users just issue the following command :
sudo apt-get update sudo apt-get install rtorrent
And this will install the rtorrent for you .
2. For Fedora users just issue the following command :
sudo yum install rtorrent
Now rtorrent is installed on your system .
3. For those who want to install by compiling from source can download the latest version from here
If there is any problem installing it from source then ask me for help in the comments .
4. To check if rtorrent is correctly installed you can run from terminal by typing
rtorrent
When you will first start it , it will show a warning that configuration file .rtorrent.rc not found .Just ignore it .
I suggest that you never run rtorrent as a root .
CONFIGURATION :
Before we begin configuration you need to create few directories which will be used by rtorrent . Suppose that your user name is foo . Then the user foo will create the following directories .
1. Default directory to save the downloaded torrents. Open your terminal and issue the following command without root (sudo) .
mkdir /home/foo/rDownloads
The above command will create a directoy named rDownloads in your home directory where your dowloaded torrents will be saved automatically . Remeber that you must change foo with your own username .
2. Default session directory . This is very important as it will contain data related to your download , paused , completely torrents .
mkdir /home/foo/session
This will create a directory in your home directory of name session and it will be used by rtorrent to save its current session .
Alright now you have created the directories required so now we can move on to the actual configuration part . So first of all download this files and save it on your computer.
Now open the file with your favorite text editor . You will a long file with some stuff in it . Well all this stuff is what we are going to configure now . The first thing that you will see is something like this :
# Maximum and minimum number of peers to connect to per torrent. #min_peers = 40 #max_peers = 100
Now change it to exactly as shown below
# Maximum and minimum number of peers to connect to per torrent. min_peers = 50 max_peers = 80
Now the next thing to change is this :
# Maximum number of simultanious uploads per torrent. #max_uploads = 15
change it to this :
# Maximum number of simultanious uploads per torrent. max_uploads = 4
Now change this :
# Global upload and download rate in KiB. "0" for unlimited. #download_rate = 0 #upload_rate = 0
Into this :
# Global upload and download rate in KiB. "0" for unlimited. download_rate = 0 upload_rate = 50
Now change this :
# Default directory to save the downloaded torrents. #directory = ./
Into this :
# Default directory to save the downloaded torrents. directory = /home/foo/rDownloads
(replace foo with your username)
Now change this :
# Default session directory. Make sure you don't run multiple instance # of rtorrent using the same session directory. Perhaps using a # relative path? #session = ./session
Into this :
# 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/foo/session
(replace foo with your username)
Now change this :
# Port range to use for listening. #port_range = 6890-6999
Into This :
# Port range to use for listening. port_range = 60125-64125
Now change this :
# Start opening ports at a random position within the port range. #port_random = no
Into This :
# Start opening ports at a random position within the port range. port_random = yes
Now change This :
# 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
Into This :
# 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 = yes
Now change this :
# encryption = allow_incoming,enable_retry,prefer_plaintext
Into This:
encryption = allow_incoming,try_outgoing ,enable_retry
Now change this :
# dht = auto # UDP port to use for DHT. # # dht_port = 6881 # Enable peer exchange (for torrents not marked private) # # peer_exchange = yes
Into This:
dht = auto # UDP port to use for DHT. # dht_port = 63425 # Enable peer exchange (for torrents not marked private) # peer_exchange = yes
Alright now your configuration is complete . Now save the file and copy the file into your home (/home/foo) directory . And issue the following command .
mv rtorrent.rc /home/foo/.rtorrent.rc
This command is simply to hide the rtorrent.rc file
USAGE :
Now using rtorrent is very simple . Open your terminal and write
rtorrent
without root and hit enter
you will see a screen like below
The above screenshot is having the following useful information .
To demonstrate the usage to rtorrent we will download the latest version of Ubuntu from here via torrent . So download the torrent file and save it in your computer . I downloaded the file and saved it in /home/harbhag/ where harbhag is my username for the system .
Now hit ENTER and the above screen will change to the one like below :
Here you can see that in the end of the screen is load> , so here rtorrent is asking to load the torrent file to start download .
Now press TAB and you will a screen like the one below
Here it is showing the list of all the Directories and files present in my home directory . Now you can see that in the end of the list it is showing torrent file that i just downloaded . If you also saved the file in your home directory then you will also see this file (ubuntu-10.04-desktop-i386.iso[www.tuxdistro.com].torrent) along with the other files and directories present in your home directory .
Now enter u (first letter for the torrent file) and hit TAB and it will automatically load the torrent file for you like below .
Now hit ENTER and your screen change to the one like below :
your torrent is loaded now but its not downloading yet to start the download press UP or DOWN arrow and you will see stars in front of the name of torrent you just added like below :
Now press Ctrl key and s key together (i.e. Ctrl+s) and your torrent will start downloading and the numbers on the bottom of the screen will start changing . Congratulations now your have successfully loaded your first torrent in the rtorrent .
To stop the downloading press Ctrl+d and your torrent will stop and if you press Ctrl+d the torrent will got deleted . To quit the rtorrent first stop all the torrents you are downloading by pressing Ctrl+d and then press Ctrl+q to quit the rtorrent . If you will press the RIGHT arrow key while the stars are in front of the torrent , then you will see a screen like below :
Here you can find lots of information regarding peers and trackers and many more . To exit from this screen to go back to previous screen just press the LEFT arrow key .
So thats all for now . If you have any problem regarding this tutorial or you are having slow speed or your are not able to do anything i explained here then you can ask me for help in the comments . Good luck ,cheers .
Improvements :
Well one of my reader(Ellidi) suggested me in comments that torrents should be loaded in to rtorrent automatically as adding them manually is little more overhead . So now I am going to explain how to do it . You need to change the file (rtorrent.rc to make this feature work . So open the file and change it as below :
gedit /home/foo/.rtorrent.rc
and change this :
# Watch a directory for new torrents, and stop those that have been # deleted. #schedule = watch_directory,5,5,load_start=./watch/*.torrent #schedule = untied_directory,5,5,stop_untied=
Into this :
# Watch a directory for new torrents, and stop those that have been # deleted. schedule = watch_directory,5,5,load_start=/home/foo/watch/*.torrent #schedule = untied_directory,5,5,stop_untied=
And then create the watch directory
mkdir /home/foo/watch
And dont forget to replace foo with you username .
So from now on rtorrent will automatically start downloading the torrents that you will save in watch (/home/foo/watch) directory . And if you will delete the torrent from the rtorrent , it will be automatically deleted from the watch directory .












31 comments
Comments feed for this article
June 30, 2010 at 5:09 pm
dev
Do you know how to use magnet links in rtorrent?
June 30, 2010 at 6:04 pm
harbhag
try this tutorial here , but for this you need to compile rtorrent yourself .
July 1, 2010 at 2:39 am
dev
But I did compile it.
I have version 0.8.6/0.12.6
When I load-start magnet link I get this message:
Could not open file: “magnet:?xt=urn:…”
February 20, 2012 at 1:02 pm
Mirani
I have rtorrent commandline client installed in ubuntu 10.04 ..I use magnet url to download torrrent.
I am witing a program which will receive info hash of torrent as input and find out whether seeeding for that torrent has started or not ?
Can you tell me any why through which i come to know ?
With Best WIshes
June 30, 2010 at 6:02 pm
Ellidi
You can make the torrents autoload from a directory. This is too much of a bother, don’t you think?
June 30, 2010 at 6:33 pm
harbhag
I myself use this feature but i thought it may be more of learning to explain how to add torrents manually . But as you pointed out this , so I will add this to the tutorial . Thanks for your suggestion . Keep em coming .
June 30, 2010 at 6:24 pm
Scott
I’ve been using Transmission for years. I’m curious what version you were trying out. Older versions were seriously deficient. On the other hand, I’ve never tried uTorrent, and I’ve heard that is the sin qua non of graphical torrent clients.
June 30, 2010 at 6:36 pm
harbhag
I never had any problem with the efficiency of the transmission . But I had very strange problem with that . My ISP throttles my bittorrent speed so I never got max speeds in transmission even if I used highest encryption . This is the only problem that kept me from using transmission as my default client .
July 2, 2010 at 11:02 pm
Best Lightweight Applications for Linux . « Tech Simplified
[...] rTorrent Simple and lightweight ncurses BitTorrent client [...]
August 9, 2010 at 12:26 am
warez indir
Thanks to good documentation.
February 22, 2011 at 2:58 am
swwing17
I’m very confused…your example says: “To demonstrate the usage to rtorrent we will…download the torrent file and save it in your computer.” Then it says: “Now you can see…torrent file that i just downloaded .”, and then: “your torrent is loaded…Now press Ctrl key and s key together (i.e. Ctrl+s) and your torrent will start downloading.” My question is, if i’ve already downloaded a torrent, why are you telling me to download it again, using rtorrent? Isn’t that a waste of time and disk space? Is there a way to use rtorrent to download a new torrent file, that you haven’t previously downloaded? If I want to download a torrent from a website, can I do that ONLY using rtorrent?
February 22, 2011 at 6:02 am
harbhag
The second time I said to download torrent, that means I am talking about actual contents of that torrent and not the .torrent file itself. I am sorry if its confusing to you , I will try to update the article as I will get time.
August 12, 2011 at 3:14 am
Akshay Gaur
is there any way to limit the number of active torrents to one?
thanks in advance!
August 12, 2011 at 3:16 am
Akshay Gaur
also, can we schedule rtorrent to run only for specific durations in a day like we can in deluge/utorrent?
September 12, 2011 at 11:25 pm
backtogeek
I have an easy guide for installing transmission in case anyone stumbles over this: http://backtogeek.com/2010/07/20/installing-transmission-on-centos/ and wants a simple to use torrent client for centos (utorrent alternative) with a nice web gui
enjoy!
October 14, 2011 at 3:58 pm
Cómo descargar con Bittorrent desde consola (¡perfecto para VPS!)
[...] hecho está pensado para la consola y hace uso de libTorrent como backend. Un usuario ha creado un completo tutorial para sacarle provecho, y aquí tenéis esas [...]
October 14, 2011 at 5:57 pm
Cómo descargar con Bittorrent desde consola (¡perfecto para VPS!) | Tutoriales de Informática
[...] cierto está pensado para la consola y hace uso de libTorrent como backend. Un usuario ha creado un completo tutorial para sacarle provecho, y aquí tenéis esas [...]
January 21, 2012 at 11:37 pm
Anon
A much better torrent client is Tixati. Tixati is way better than any of the above mentioned clients. I use it all the time for chatting and searching and sharing. Chatting is the funnest part.
March 11, 2012 at 5:11 am
Jesper
Why would you want to chat in a torrent client? I’d rather want a torrent client that is focused on downloading torrents. Chatting is better done with a dedicated chat program.
March 26, 2012 at 3:57 am
Vytautas Povilaitis
Hello,
Wouldn’t it make sense to use
~
(tilde sign) instead of writing
/home/foo
everywhere and constantly reminding to use actual username?
~ is shorthand to /home/
Nice rtorrent tutorial though
I’m using rtorrent myself.
April 29, 2012 at 12:43 pm
eli
I want to know how much Total data my rtorrent 0.8.9 uploaded or seeded ???
I am interested in building statistics. I tried installing Pyroscope but could not succeeded yet
July 4, 2012 at 11:47 am
Ubuntu BT 命令 — rtorrent « 我愛,故我在 — I love, therefore I am
[...] 1:http://harbhag.wordpress.com/2010/06/30/tutorial-using-rtorrent-on-linux-like-a-pro/ ← WordPress檔案上傳下載 [...]
September 21, 2012 at 8:11 pm
keny
Hmm the torrent stops seeding when i close Putty? or will it still keep on seeding? if it stops seeding can you please tell me how to make it so it seeds 24/7?
November 11, 2012 at 7:41 pm
punktyras
Install ‘screen’ program on remote computer. Then issue command like this:
screen rtorrent
And that’s about it. Your seeding will continue after you turn off ssh or putty or whatever session. When you connect again, issue screen -r command and you’ll be reconnected. Reading screen manual won’t hurt though
November 12, 2012 at 1:00 am
Jesper
If you start rtorent within a screen session it should keep running even when you detach and log off. Are you getting other results?
January 31, 2013 at 9:39 pm
Best Lightweight Apps for Linux » Linux Shtuff
[...] rTorrent Simple and lightweight ncurses BitTorrent client [...]
May 8, 2013 at 1:23 am
Akash Agrawall
I am getting an error “Using ‘epoll’ based polling.”,when i enter the filename and press enter….!!
May 13, 2013 at 5:55 pm
Akash Agrawall
When i press ctrl+s it says “target of wrong type command used”!!
May 13, 2013 at 7:20 pm
punktyras
You are issuing command while not selecting file to which that command should be applied. You can choose file by tapping up/down keys on your keyboard.
May 13, 2013 at 6:10 pm
Akash Agrawall
Is there no system like pause in rtorrent??
May 13, 2013 at 7:26 pm
punktyras
Use ^k command to pause torrent. That is:
1. Chose file you want to pause using up/down keys
2. Press Ctrl key and while holding it, tap letter K key
3. Release Ctrl key
Use ^s command to resume:
1. Chose file you want to pause using up/down keys
2. Press Ctrl key and while holding it, tap letter S key
3. Release Ctrl key