Personal tools
You are here: Home GNU / Linux Debian 4.0 Etch Install Torrentflux-b4rt on Debian 4.0 Etch
Document Actions
  • Send this page to somebody
  • Print this page
  • Add Bookmarklet

Install Torrentflux-b4rt on Debian 4.0 Etch

by Pierre-Yves Landuré last modified 2009-03-12 12:10

Torrentflux is a Web application allowing you to control various BitTorrent clients. Written in PHP, it allow you to start BitTorrent, Usenet and standard downloads from any computer connected to the Internet. It is very useful if you move a lot, and use BitTorrent download frequently.

Dependencies

First, you need to install a HTTP server with PHP support. In order to do this, you can follow my guide Install Lighttpd and PHP 5 on Debian 4.0 Etch.

You also need to create a TORRENTFLUX database. This can be done by following my guide MySQL for Debian 4.0 Etch.

You need to install needed PHP extensions and softwares :

/usr/bin/apt-get install bzip2 php5-mysql php5-gd php5-cli unrar grep python \
net-tools mawk wget unzip cksfv vlc-nox uudeview apg python-psyco python-crypto \
libxml-simple-perl libxml-dom-perl libdbd-mysql-perl libdigest-sha1-perl \
bittorrent bittornado

Once this done, you have to make sure that PHP has loaded the newly installed modules by restarting your web server. For example, with lighttpd, do:

/etc/init.d/lighttpd force-reload

Installing

First, select the Torrentflux-b4rt version you want to install. For the moment, we use a Beta version (which is only Beta because of its HTML interface, but work perfectly) :

VERSION=1.0-beta2

And we download the sources :

/usr/bin/wget http://download.berlios.de/tf-b4rt/torrentflux-b4rt_$VERSION.tar.bz2  \
--output-document=/tmp/torrentflux-b4rt_$VERSION.tar.bz2

We untar the downloaded file :

/bin/tar --directory /tmp -xjf /tmp/torrentflux-b4rt_$VERSION.tar.bz2

And we move the created folder to its destination :

/bin/mv /tmp/torrentflux-b4rt_$VERSION /opt/torrentflux

We create a symbolic link for the Torrentflux web front-end to a place available to the HTTP server :

/bin/ln -s /opt/torrentflux/html /var/www/torrentflux

We make the configuration folder writable by the server :

/bin/chown -R www-data:www-data /var/www/torrentflux/inc/config/

Now, create the Torrentflux download folder :

/bin/mkdir --parent /var/lib/torrentflux

And make it writable for the HTTP server :

/bin/chown -R www-data:www-data /var/lib/torrentflux

You can now start configuring Torrentflux by viewing :

Follow the configuration steps :

  1. Database : Disable database creation (by unchecking the "Create Database" checkbox).
  2. Server configuration : Use /var/lib/torrentflux as User Download Path location.
  3. Software dependencies check : This step should went fine.
  4. setup.php file deletion : Warning, this step fail. It is normal, don't worry about it.

Once you are at the setup.php file deletion step, your configuration is done. Come back to your command line, and remove the setup.php file :

/bin/rm /var/www/torrentflux/setup.php

And make unwritable by the server the Torrentflux configuration :

/bin/chown -R root:root /var/www/torrentflux/inc/config/

Once this done, choose a login and password for your administrator account. This can be done by this command line :

TORRENTFLUX_PWD=`apg -q -a  0 -n 1 -M NCL`
echo "Your password for the 'admin' account is '$TORRENTFLUX_PWD'."

Note and remember this password, and go to the Torrentflux login page. The first login is used as administration account. You can use your usual administrator login, or the one proposed by the command line before :

Configuration

Once your login done, you will be redirect to a configuration page.

Server

The only change to do here is :

  • transmissioncli : /usr/bin/transmissioncli

Transfer

In this page, you configure file transfers parameters. On my own, I use the following settings :

  • Default BitTorrent Client : BitTornado : This client allow encryption.
  • Torrent Metainfo Client : btshowmetainfo.py
  • Port Range (B+T+M) : Select here the BitTorrent connection ports. Don't forget to open them on your firewall or router.
  • Default Percentage When Seeding Should Stop (B+T+M+A) : 150 % : Be nice, don't use a value under 100%.
  • Wget : Enable Passive FTP : True : Mandatory if you use a firewall or a router.
  • Enable Nzbperl : All users : Allow all of your users to run Usenet downloads.
  • Use Subdirectories : Use Usenet group name.

Webapp

In this page, you setup your interface parameters. I change the following values:

  • Select Authentication Type: Form-Auth + Cookie : This value will ease your life :D.
  • Default language : English, or any other language that fit you :D
  • Enable template cache : True

Index

In this page, you change the interface automatic update parameters. Here are the ones I use:

  • AJAX update : True : AJAX update of the download list.
  • Default Torrent Search Engine: mininova : TorrentSpy is not a very good idea :D.
  • Default Sort Order : Name - Ascending : We sort torrents by name (it is easier to use in my opinion).

Dir

In this page, you can change downloads folders parameters.
  • Public Write : True : Very useful to delete your downloaded files from shell without using root account.

Users

In this page, you can create your users. Use the admin account only for administration, not for downloading.

Using Transmission as BitTorrent client

If you want to use Transmission in stead of BitTornado to manage your downloads, be aware that you can not use the version provided by Debian. You need to build by yourself a modified version of Transmission. This modification is needed by Torrentflux in order to work flawlessly.

In order to do this, you first need to choose the version of Transmission to install:

VERSION=1.06

And start the download:

/usr/bin/wget http://download.m0k.org/transmission/files/transmission-$VERSION.tar.bz2 \
--output-document=/tmp/transmission-$VERSION.tar.bz2

Untar the downloaded sources:

/bin/tar --directory /tmp -xjf /tmp/transmission-$VERSION.tar.bz2

Untar the Torrentflux patch for Transmission 1.06:

/bin/tar --directory /tmp -xjf /opt/torrentflux/clients/transmission/Transmission-1.06_tfCLI-svn3356.tar.bz2

Patch the Transmission sources:

/bin/cp /tmp/Transmission-1.06_tfCLI-svn3356/cli/transmissioncli.c /tmp/transmission-$VERSION/cli/transmissioncli.c
Install the build dependancies:
/usr/bin/apt-get install make gcc libc6-dev pkg-config libssl-dev
Go in the sources folder:
cd /tmp/transmission-$VERSION
Configure:
./configure --disable-gtk

Build:

/usr/bin/make

And install:

/usr/bin/make install

Now, I suggest you to remove the build dependencies in order to keep your system clean:

/usr/bin/apt-get --purge remove make gcc libc6-dev libssl-dev pkg-config

Now, log into Torrentflux as admin, and edit your settings in order to use the Transmission command line.

Note: The path to use in the "server" tab for the Transmission command line interface is:

/usr/local/bin/transmissioncli

Going deeper

VLC

You may have been surprised by the fact that VLC (Video LAN Client) is part of Torrentflux dependencies. Well, the reason to this is that Torrentflux use VLC in order to "stream" the downloaded Video contents. In order to this fonctionnality to work, you need to open the 8080 port of your firewall or router (You can change this port in the "Stats" configuration page).

Fluxd

This tool allow Torrentflux to do some actions even if you are not connected to the tool. Having not found a init.d script for this daemon, and having no use of it for the moment, i only point this tool to you. I encourage you to read the description of this tool functions in its configuration page. Some can be of use to you.

Alternative

If Torrentflux-B4rt does not fit your needs, I encourage you to try BTG, another BitTorrent client with Web interface. In order to do this, I invite you to follow my guide Install BitTorrent client BTG and its Web user interface wwwBTG on Debian 4.0 Etch.

Thanks

Bittorrent clients MUST be installed from Torrentflux-b4rt

Posted by munk at 2008-03-15 18:48
Disclaimer: I am a developer on the tfb project.

Excellent guide above, kudos.

An important note though - tfb will NOT work correctly if you try and use the vanilla versions of transmission as you have indicated in your guide. The apt-get line needs modifying to remove transmission (ie don't install the default/vanilla transmission) and also add a note further down at some point to inform your reader that if they want to use transmission then they need to install the version of transmission that is specially modified to work with tfb which can be found in the tfb distribution tarball. The latest modified versions of transmission can also be found in SVN on the tfb site.

For more info see the tfb forum:

http://tf-b4rt.berlios.de/forum/

Cheers :)

modification done

Posted by Pierre-Yves Landuré at 2008-04-05 20:34
Thank you for your feedback. This guide is now up to date.

transfers die

Posted by nania at 2008-03-16 13:05
im runnin Torrentflux-b4rt 1.0-beta1 on debian 4.0 etch.
problem: all my transfers die every sunday oO
i checked the cronjobs, nothing suspicious.
anyone can help?

greetings nania

answer for transfer dies

Posted by nickoslh at 2008-04-22 22:51
you must search settings vor your apache

check logrotate

Posted by rodaballo at 2008-04-23 16:29
logrotate restarts the webserver and once restarted all child processes die.

Change the /etc/logrotate.d/apache2 to rotate the logs monthly and they'll die only once per month, 1st day, or just disable it.

awesome guide

Posted by jared at 2008-04-09 07:29
Fantastic guide!! cksfv is no longer in the repos - at least for the beta version of Ubuntu 8.04 "Hardy Heron" I'm using. One more thing - the streaming works great, but no audio - I'm using Ubuntu on my laptop, haven't tried any Windows boxes using Windows Media Player. I may just need to get some more encoding codecs for my ubuntu server.

One more note - this may be beyond the scope of this install - but you should show people how to run torrentflux over SSL using a self-signed cert. Show how you can us services like no-ip.org and change your default apache listening port (8181) to get by ISP filters. I know that's above and beyond, but the first thing I do when building a new torrentflux / b4rt server. Thanks again for the quick copy-and-paste guide :)

thank you

Posted by lwolf at 2008-04-09 08:08
Thank you for your feedback. This guide is designed for Debian Etch. It may have differencies with a install on other Debian based distributions, but the may thing is there.

Concerning the other specific configurations you mention, it is way beyond the goal of this guide. This guide is designed to ease the install of Torrentflux b4rt, not to setup an entire network configuration XD, even if the entire Debian section of this site begin to look like something approaching :D

yeah, better to keep it simple

Posted by jared at 2008-04-09 17:20
very true - it's always best to keep it simple. It's just too easy to get carried away. Anyhow thanks for the very well written guide, now all my coworkers want to build torrentflux b4rt servers!

C00bacan

Posted by Riney at 2008-04-15 02:38
I have a feeling my b4rt doesn't work correctly due to python-psyco no longer being downloadable from debian, i went back to using opensuse10.2 for the moment. But good guide helps alot

http://www.ekhoury.com

Posted by Elie El Khoury at 2008-05-05 23:15
Very nice tutorial! got it installed successfully

Thank You !

Posted by Alejandro at 2008-05-12 07:29
Thank you for the guide, looks like it's working :D

I have to buy a new hdd now x)


I don't speak english very well, sorry and than you :D

Where I can write

Posted by gonzela2006 at 2008-05-22 13:45
Thanks
I have a website with control panel so I did not know where I can write these commands

+
/usr/bin/wget http://download.m0k.org/transmission/files/transmission-$VERSION.tar.bz2 \
--output-document=/tmp/transmission-$VERSION.tar.bz2

+
/usr/bin/apt-get install make gcc libc6-dev pkg-config libssl-dev

and so on
Please help Me

This article is not for you.

Posted by lwolf at 2008-05-22 13:56
This article is to install Torrentflux B4rt on a personnal server where you have root access. If you does not have root access to your server, this article can not help you. I'm not even sure that you can install Torrentflux in the environment you describe.

Good luck.

How ?????!!!!!

Posted by gonzela2006 at 2008-05-22 16:12
Could you help me how I can install it ?
Please

well

Posted by lwolf at 2008-05-22 16:18
first step is to setup a home server... if you have no idea on how to do this.. torrentflux is not for you. I recommend you Deluge Torrent. It is a great client for Linux systems.

Please

Posted by gonzela2006 at 2008-05-22 16:34
Please
I want to install it in my web server
Thanks

well

Posted by lwolf at 2008-05-22 16:39
maybe i have not been clear. It is NOT POSSIBLE to set it up without a root ssh access to your server.

OH

Posted by gonzela2006 at 2008-05-22 16:41
oh I am very sad

congrats

Posted by francesco at 2008-06-13 08:29
this guide simply pwnz :D
installed in my home server and now it's up and running

by the way..what if i want to acccess my web interface by remote?what i have to do to redirect from a browser anywhere in the world to my home server?

Opening to the world

Posted by lwolf at 2008-06-13 08:45
Well, i think you should take a look at dyndns , and open the port 80 of your router , and redirect it to your serveur. There is a bunch of howto on the web for this. :) Good luck

fluxd

Posted by francesco at 2008-06-14 12:07
just a question
i've seen that occasionally (well, this morning is the 4th time) all of my torrents stop with 'torrent died' message in the home
i've seen FLUXD in the admin menu and turned on with 'manteinance+restart died torrent' option..but it seem that each time i reboot the dedicated server i have to manually restart fluxd..is there a way to autostart?i didn't find any option in the gui..

fluxd

Posted by lwolf at 2008-06-14 13:14
You need to create a init.d script for fluxd and to set it to start automatically with the update-rc.d command line.
The torrent died problem is triggered by logrotate that restart apache at each log rotation.

Good luck

script

Posted by francesco at 2008-06-14 13:44
so, can you update your howto with this script?i'm pretty noob ehehe
i've read something about this logrotate problem..how can i solve once and for all?

excuse me if i'm using your blog as a support forum..but beside this one i didn't find any answer around..thanks obviously :P

logrotate

Posted by francesco at 2008-06-15 23:49
i must edit /etc/logrotate.conf changing 'weekly' to what?cacn i choose 'disabled'?

logrotate

Posted by lwolf at 2008-06-16 01:20
actualy, you are looking for the file in /etc/logrotate.d/apache2 (or lighttpd, i'm not sure). You can either remove the file, or remove the line of the file that say to restart apache or lighttpd.

Good luck.

By the way, there is a support forum on the Torrentflux-b4rt web site.

logrotate

Posted by francesco at 2008-06-17 01:40
this is my logrotate

GNU nano 2.0.2 File: /etc/logrotate.d/lighttpd

/var/log/lighttpd/*.log {
weekly
missingok
copytruncate
rotate 12
compress
notifempty
sharedscripts
postrotate
if [ -f /var/run/lighttpd.pid ]; then \
if [ -x /usr/sbin/invoke-rc.d ]; then \
invoke-rc.d lighttpd force-reload > /dev/null; \
else \
/etc/init.d/lighttpd force-reload > /dev/null; \
fi; \
fi;
endscript
}


if i just rename the file in order to restore it if something goes wrong is the same thing?
the line to remove is the 'weekly' one?
okok just answer to this and next time i'll go bother on support forums :P
thanks again

actually

Posted by lwolf at 2008-06-17 05:37
The lines to remove are :

postrotate
if [ -f /var/run/lighttpd.pid ]; then \
if [ -x /usr/sbin/invoke-rc.d ]; then \
invoke-rc.d lighttpd force-reload > /dev/null; \
else \
/etc/init.d/lighttpd force-reload > /dev/null; \
fi; \
fi;
endscript


good luck.

Need restart of Lighttpd after step 1

Posted by Rob at 2008-06-24 13:54
Great Guide!

small thing, but after installing the PHP extensions, Lighttpd needs to be recycled.. many may know that already, but I didn't until i searched for why TF was saying PHP for MYSql not installed :)

transmissioncli

Posted by JohnC at 2008-07-30 09:29
Well i have been searching for like 1 month about this. when install transmissioncli for bittorent b4rt I could never get the above directions to work. not to say they do not .. but anyway . I thought maybe this might help someone else..

I am runnung Ubuntu Hardy heron.. 8.0.4

Here is what you need to do to make sure you COMPILE TRANSMISSIONCLI..

sudo apt-get install php5-cli php5-gd libxml-dom-perl libxml-simple-perl libthreads-shared-perl libdigest-sha1-perl libhtml-parser-perl zip unzip unrar transmission-cli

sudo apt-get install libcurl4-openssl-dev


You must then download

http://download.m0k.org/transmission/files/transmission-1.21.tar.bz2

then you go unpack this file.. open it up look for the CLI folder.. open the transmissioncli file with like GEDIT.. then you delete everything in it.. and then open this link

http://svn.berlios.de/svnroot/repos/tf-b4rt/branches/clients/transmission/transmission-1.20/cli/transmissioncli.c


copy the full text from this page and paste it into the transmissioncli file you opened from the folder above..


./configure --disable-gtk --prefix=/opt && make && make install


You must be inside of the folder transmission 1.21


ALSO you must first do this and then the above.

MAKE SURE YOU ARE ROOT..... "SUDO -S" BEFORE YOU START

then you should be able to compile it. I hope this will help. all of this I got from different webpages.. I hope it will help someone. i DO NOT KNOW it this is the right way o not.. so I do not want to be responsible if you mess up your system . but this worked for me.. with out any problems.. Good luck. I never will understand why people put such bad directions up when it is so easy to make it simple for newbies.. and that is also me..



Well... Torrentflux-b4rt need a patched version

Posted by Pierre-Yves Landuré at 2008-07-30 09:48
Hi,

as far as i know, torrentflux-b4rt need patched transmission version. There is only patchs availables for some versions. 1.06 is one of them.

So, well, getting sources for 1.21 and then getting the patched 1.20 file..... is not a real god way to do this....

Now, it's fine if it work for you... but well... not the nicer way to do this.

Hi Pierre ref. to ttransmissioncli

Posted by John C at 2008-07-30 12:29
I have looked long and hard for a way to do this.. I am a newbie at Ubuntu, Mac user forsure.. but I wanted this torrentflux b4rt to work..

I have tired this on 3 different computers and this worked perfect on all of them.. being a linux newbie, it is all about repetition over and over I think, if you want to learn.. SO that is what I did on 3 different Ubuntu machines.. Silly I know.. everytime is worked fine.. it compiled.. I did try the one you made.. the commands did not work ( some did) maybe because it is Ubuntu I am running.. Complicated as well. ok copy and paste but still, nice of you to post it.. You should try it.. it works great for me.. Maybe it will help some other newbie like me to get it installed.. because I tried yours like 10 times.. all this 1.06_tfCLI-svn3356 for example.. I would have to find out how that works and what it is for.. to complicated.. way to .. s then I found the steps aboved.. worked great no errors.. and it is working. I hope correctly . I download fast and upload fast and no errors in the path.. so i HOPE IT IS RIGHT .. be interested to hear why you think it is not the right way . I mean I can say that anyone can follow the directions if i can .. well maybe it will help someone.. if not delete it.. do check it out and see if you could get it to complile.-. maybe you will have even a better way , as you seem much much smarter at this then me.. and your English is great for a French man ( or so your name would tell) .. Bye. !

Well

Posted by Pierre-Yves Landuré at 2008-07-30 12:43
It is true i'm a frenchie :)

Why do i think your method is not the best ?, because you use files from two differents torrentflux versions.

You download sources for Transmission 1.21, and you replace one file in it with a file from a patched Transmission 1.20 sources.

My howto is designed and tested for Debian 4.0 Etch. For ubuntu, it should work, but only if you run it as root. This can be done by running :

sudo -s

before anything else.

As for you version, it can work, but you should really use the 1.20 sources instead of 1.21:

http://download.m0k.org/transmission/files/transmission-1.20.tar.bz2

Mixing versions is not a good thing.
to


Great instructions..

Posted by just wanted to say at 2008-08-22 00:42
I did just like you said on debian and it works.. just perfect.. thank you for the time you spend..

I have been wanting to try your lighty instructions as well instead of using apache2 but I have been reading that lighty has a memory..

are you aware of this and is it a big thing..

anyway thank you again for the time you spent to write this bittorrent instructions.. they were perfect . I really needed that .

thank you so much for your help and time and making it work great..

Can't pass the mysql

Posted by Edd at 2008-08-22 17:07
After installing
lighttpd & php 5
from http://howto.landure.fr/gnu-linux/debian-4-0-etch-en/install-torrentflux-b4rt-on-debian-4-0-etch/gnu-linux/debian-4-0-etch-en/install-lighttpd-and-php-5-on-debian-4-0-etch

mysql database
from http://howto.landure.fr/gnu-linux/debian-4-0-etch-en/install-torrentflux-b4rt-on-debian-4-0-etch/discussion_reply_form

torrentflux
i get some trouble on the setup, it say
Error: Your PHP installation does not have support for MySQL built into it. Please reinstall PHP and ensure support for your database is built in.

what shall i do now?

restart web server

Posted by lwolf at 2008-08-22 19:04
you should run:

/etc/init.d/lighttpd force-reload

to make php load the mysql module.

Good luck

Can't pass the mysql

Posted by Edd at 2008-08-23 00:59
Thank got it working, by any chance you know how to setup ftp?

vsftpd howto

Posted by lwolf at 2008-08-23 07:26
i've just published a vsftpd howto, but it is in french only for the moment... as soon as i've finished my email server, i plan to translate it.. but i don't know how many time it will take me.

vsftp

Posted by Edd at 2008-08-24 12:07
Thank lwolf
i will give the guide a try using translator, :( been stuck for a week reinstalling lol. Will look forwar to your guide :)

Download Failed

Posted by Kristian Kirilov at 2008-09-08 09:56
Download Failed! I see this when i start the torrent. I dont know what is the problem, where i can find debug massages.

How-to fix this?

hum, permission problems ?

Posted by Pierre-Yves Landuré at 2008-09-08 10:09
Hi,

do you have installed all the dependencies ? Is you PHP able to run programs ? For me, it seems that PHP can not start the torrent client.

There is a log section in the popup windows that you open by clicking on the torrent line.

I can't help you more than that.

Good luck.

For more help, go to torrentflux-b4rt forums.

Error

Posted by Oliver at 2009-02-02 18:35
The installation will now try to connect to the database server, create a new database if applicable and run some tests to check we can create tables in the database.

Error: Cannot connect to database to perform query tests.

I keep getting this error, any ideas?

Fixed

Posted by Oliver at 2009-02-05 00:13
Fixed, something was wrong with my user, using root for now.

Error: Cannot connect to database

Posted by Justin at 2009-03-20 23:36
I am using root and still getting this error.

Great job

Posted by Trebour at 2009-10-05 20:17
Many thanks worked great for me :)

BlogBang
Navigation
 

Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards:

Wikio