My favorites | Sign in
Project Home Downloads Wiki Issues
Search
for
Guide  

Phase-Deploy, Phase-Support
Updated Jan 14, 2011 by login...@gmail.com

What is wTorrent?

wTorrent is a web interface for rTorrent, a popular BitTorrent client for Linux. If you are able to use a browser, you will able to use wTorrent.

These are some wTorrent futures:

  • Multilanguage support
  • Easy to use
  • Easy to "install"
  • Nice look
  • Possibility to have private torrent
  • Multiuser support

What is rTorrent?

rTorrent is one of the most important BitTorrent client for Linux. If you think: "I never have heard about it", it's true, people usually never talk about it. Why? Easy answer, rTorrent is impossible to use for most of people. It hasn't got a graphical interface, it's a program managed from terminal with the keyboard, manually writing the orders to the program. That's why exist interfaces like wTorrent.

Why should i use this kind of program?

In your house do you keep your pc on all time to downloading with BitTorrent? Many people have got some sophisticated tools, like router, mediacenter, nas and seedbox that works with Linux and are able to download instead of their computers, saving money and times. They need a program like rTorrent and wTorrent to manage their download. In this guide we explain the installation of wTorrent on a seedbox. Anyway, the instructions for the other appliances are not very different.

What is a Seedbox? Why should i know that?

What is a Seedbox?

A seedbox is a remote rented computer dedicated to P2P and filesharing. Is the fastest and most efficient way to download and manage torrents. There are many companies that already offer this kind of service, ex. Imageshack and Instant-torrents, but in this guide we want to set-up a seedbox using a cheap rented server. The are already thousands of people in the world that regularly use a seedbox for downloading.

How to rent a Server

First of all, we need to rent a server from a company in the world. For this kind of service i sugest to you to choose an europena company that offers little server at moderate prices. Examples are Kimsufi and Leaseweb. How much it costs? Near to 18€ at month. Isn't it a good price? You could divide it with some friends. Usually servers comes with Debian or Ubuntu, two Linux distributions, as operating system. If you don't know waht is Linux, stop reading this guide, now.

After you have paid the service (ex. with Paypal) you will receive an email form your company with your IP, an username (root) and a password. You have to use Putty to access to the server throught command line. Don't you know command line? Have you ever seen a black screen with some text on it? Right, it was the command line.

Befor proceeding with the guide, we have to learn how to administer a server.

Access to server

Execute Putty and in the hostname section puts the address (IP) of your server and press Open. A terminal appears. You must provide an username and a password.

login as: root 
root@hostname's password: password

If all is going right, now you are logged as administrator.

Preamble to guide

This guide refers to Ubuntu 9.10 server edition. It is possible to use another distribution, but in this way you have to adjust the istruction case by case.

There are many programs useful to set-up a seedbox: Transmission, Vuze, Deluge e rTorrent with interfaces: wTorrent, ruTorrent,...

The most important future of this programs is the complete compatibility with Linux and availability of a convenient web interfaces. In fact the best way to manage own seedbox is through a browser.

We have preferred the couple rTorrent - wTorrent because of multiuser support capabilities, useful for the shared seedbox. Moreover rTorrent don't need a graphical system environment to work, saving system resources. The program differs to others for its stabilty, efficiency to manage even many torrent (6000+) and this is why most of trackers allow this client, insted the others can be blocked.

How to install wTorrent?

wTorrent is a web application, so it doesn't need a real installation. It's similar to a website already avaiable to use, but it can't work without a working environment adapted to its needs avaiable on computer.

To make wTorrent work you must install rTorrent that needs own library, libTorrent. To make communication beetween wTorrent and rTorrent you must install xmlrp-c. Obviously wTorrent, that is a web application, needs a web server, like Apache (otherwise lighttpd, but we won't use it). It's necessary to install other components like sQlite, php5 and many more.

Below there are the instructions that we can call "wTorrent setup".

Repository

If you already know Linux, you can pass this chapter simply enabling multiverse and universe repository of your distribuction.

Make sure that we use the same repository, ie the software source. It's necessary to edit one system file.

cp /etc/apt/sources.list /etc/apt/sources.list.backup 
sed -i -e "s/# deb/deb/g" /etc/apt/sources.list

Doing this, you have create a backup of your file and then tou have enabled some repository that are not enabled by default. To get any other information about repository, you can refer to Ubuntu documentation. Below there is an example of sources.list file for Ubuntu 9.10.

cat /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu karmic main restricted multiverse universe 
deb-src http://archive.ubuntu.com/ubuntu karmic main restricted multiverse universe
 
deb http://security.ubuntu.com/ubuntu karmic-security main restricted multiverse universe 
deb-src http://security.ubuntu.com/ubuntu karmic-security main restricted multiverse universe
 
deb http://archive.ubuntu.com/ubuntu karmic-updates main restricted multiverse universe 
deb-src http://archive.ubuntu.com/ubuntu karmic-updates main restricted multiverse universe

Now prompt these commands to update software list adn update operating system.

apt-get update 
apt-get upgrade

After these usal operations, we can proceed with the real guide.

Getting started

Now you have to install the programs needed to do the next operations.

apt-get –y install apache2 apache2.2-common apache2-utils autoconf automake autotools-dev binutils build-essential bzip2 ca-certificates comerr-dev cpp cpp-4.1 dpkg-dev file g++ g++-4.1 gawk gcc gcc-4.1 libapache2-mod-php5 libapache2-mod-scgi libapr1 libaprutil1 libc6-dev libcurl3 libcurl4-openssl-dev libexpat1 libidn11 libidn11-dev libkdb5-4 libgssrpc4 libkrb5-dev libmagic1 libncurses5 libncurses5-dev libneon26 libpcre3 libpq5 libsigc++-2.0-dev libsqlite0 libsqlite3-0 libssl-dev libssp0-dev libstdc++6-4.1-dev libsvn1 libtool libxml2 linux-libc-dev lynx m4 make mime-support nano ntp ntpdate openssl patch perl perl-modules php5 php5-cgi php5-common php5-geoip php5-sqlite php5-xmlrpc pkg-config screen sqlite ssl-cert subversion ucf zlib1g-dev php5-curl unzip unrar

It may happens that system can not found some of these package and you get some errors. In the most of cases it is necessary to change the package name with its updated name. Exmaple: if libneon26 was not found, you have to prompt libneon27. To find the updated missed name you can search in this site.

Now you have to enable some Apache modules.

a2enmod ssl 
a2enmod auth_digest 
a2enmod scgi
service apache2 restart

Please reboot the machine.

shutdown -r now

It may needs some time to rebbot. As soon as possible log in as administrator.

Install rTorrent & co

Now we start doing the real installation of xmlrp-c, libTorrent and wTorrent.

cd /root/
svn co https://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/advanced/ xmlrpc-c
wget -O libtorrent-0.12.6.tar.gz http://wtorrent.googlecode.com/files/libtorrent-0.12.6.tar.gz
wget -O rtorrent-0.8.6.tar.gz http://wtorrent.googlecode.com/files/rtorrent-0.8.6.tar.gz
tar -xvzf libtorrent-0.12.6.tar.gz 
tar -xvzf rtorrent-0.8.6.
tar.gz rm libtorrent-0.12.6.tar.gz 
rm rtorrent-0.8.6.tar.gz
cd xmlrpc-c 
./configure --disable-cplusplus 
make 
make install
cd ..
rm –rf xmlrpc-c
cd libtorrent-0.12.6 
./autogen.sh 
./configure 
make 
make install
cd ..
rm -rf libtorrent-0.12.6
cd rtorrent-0.8.6 
./autogen.sh 
./configure --with-xmlrpc-c 
make 
make install
ldconfig

If all goes fine, you have installed all necessary components to work well with wTorrent.

Configuring rTorrent

Now we will position in the home directory of an user that may execute rTorrent. In this case, the user is the administrator (root). It is necessary to manually configure rTorrent through a configuration file. You can freely choose beetween manually creating it or using a ready-to-use file.

Use these commands if you prefer a ready-to-use file.

cd /root/ 
wget -O .rtorrent.rc http://wtorrent.googlecode.com/files/.rtorrent.rc

Use these commands if you want to manually create and edit the config file.

cd /root/
nano .rtorrent.rc 

Paste this text. If you are a brave men you can edit some settings as you like.

#Questa è la cartella dove vengono salvati i file .torrent. Di fatto non la useremo. 
#Attenzione: non modificare mai questa impostazione. E' fonte di guai.
directory = ./torrents

#Questa è la cartella dove il programma salva il file di sessione. Altra grande fonte di guai. 
#Modificala opportunamente se il nome dell'utente designato all'esecuzione di rTorrent non è l'amministratore (root). Usa percorsi assoluti. 
session = /root/session
 
#Questa è la speciale direttiva che permette al programma di comunicare con wTorrent. 
scgi_port = localhost:5000
 
#Questo è il set di caratteri da utilizzare per le stringhe di testo. 
encoding_list = ISO-8859-1
 
#Questo è l'intervallo di porte che rTorrent usa per le connessioni in ingresso. 
port_range = 55990-56000

#Vuoi che il programma scelga una porta a caso fra quelle elencate?
port_random = yes

#Vuoi connetterti ai tracker usando il protocollo udp? 
use_udp_trackers = no 

#Vuoi usare il dht? (Vedere http://it.wikipedia.org/wiki/Distributed_hash_table) 
dht = disable
 
#Vuoi permettere lo scambio peer? (Vedere http://en.wikipedia.org/wiki/Peer_exchange) 
peer_exchange = no 

#Una volta terminato il download, è necessario verificarne l'integrità? 
check_hash = no

#Intendi utilizzare la cifratura del protocollo? 
encryption = allow_incoming,enable_retry,try_outgoing 

# Vuoi abilitare i controlli sul ratio? (Vedere http://en.wikipedia.org/wiki/BitTorrent_vocabulary#Share_ratio) 
ratio.enable=yes 

# Ratio minimo, massimo e quantità minima da inviare per ogni torrent. # Al completamento del file e al raggiungimento del ratio minimo desiderato, il torrent si fermerà. 
ratio.min.set=100 
ratio.max.set=150 
ratio.upload.set=10M 

# In rTorrent non esiste un comando che ti permetta di cancellare sia il file .torrent, sia i relativi file scaricati. 
# Con questa direttiva il comando Cancella assume qusta speciale caratteristica. 
system.method.set_key = event.download.erased,rm_complete,"execute=rm,-rf,--,$d.get_base_path=" 

# Quali permessi devono avere i file scaricati? Con questa direttiva ogni utente del sistema ha pieni poteri su di essi. 
# (Vedere http://it.wikipedia.org/wiki/Umask) 
system.set_umask = 000
Comment by project member login...@gmail.com, Feb 25, 2011

Not yet completed.


Sign in to add a comment
Powered by Google Project Hosting