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 .