sábado, 20 de febrero de 2010

rtorrent en Linux Ubuntu Server


Una alternativa en consola para tener un cliente de torrent es linux es rtorrent, lamentablemente rtorrent no trabaja como servidor o demonio, pero a la mano tenemos GNU Screen. Screen permite abrir consolas virtuales para luego desconectarnos y reconectarnos a ellas sin perder nada y sin que se detenga nada. Para poder administrar via web, se puede utilizar rtgui, aunque es algo básico, para mi esta muy bien. 
1.- Instalar lo necesario (seguramente ya están instalados algunos paquetes)
 sudo apt-get  install php5 php5-xmlrpc libapache2-mod-scgi rtorrent screen
2.-  Cambios en apache para que corra rtgui
 sudo a2enmod scgi
 sudo nano /etc/apache2/sites-enabled/000-default
En 000-default, justo antes del último "< /VirtualHost >"
SCGIMount /RPC2 127.0.0.1:5000
Por último reiniciar apache
sudo apache2ctl restart
3.- Configuración de rtorrent
mkdir Torrents Torrents/Downloading Torrents/Downloading/rtorrent.session Torrents/Complete Torrents/TorrentFiles Torrents/TorrentFiles/Auto
cp /usr/share/doc/rtorrent/examples/rtorrent.rc ~/.rtorrent.rc
nano ~/.rtorrent.rc

Con el último comando se abre el archivo de configuración de rtorrent para poder modificar a gusto y conforme a los directorios creados, puedes ver el mío: .rtorrent.rc o visitar el sitio oficial de rtorrent
Para revisar si todo esta ok, hay que  ejecutar rtorrent
rtorrent
Para salir de rtorrent, CTRL-Q.
4.- Demonizar rtorrent
wget http://libtorrent.rakshasa.no/raw-attachment/wiki/RTorrentCommonTasks/rtorrentInit.sh
nano rtorrentInit.sh
Reemplazar el valor de la variable user (en mi caso "www"),  luego
sudo mv rtorrentInit.sh /etc/init.d/rtorrent
sudo chown root.root /etc/init.d/rtorrent
sudo chmod +x /etc/init.d/rtorrent
sudo nano /etc/crontab
La última linea es para "apagar" y "encender" el rtorrent de acuerdo a un horario, en este  caso se "enciende" a la 1 A.M. y se "apaga" a las 6:59 A.M.
00 1 * * * root /etc/init.d/rtorrent start
59 6 * * * root /etc/init.d/rtorrent stop
Por último, iniciar rtorrent como demonio
sudo /etc/init.d/rtorrent start
5.- Instalar rtgui
Extraer todo de la siguiente forma al directorio donde se encuetran los archivos web, generalmente /var/www , en mi caso ~/www/rtgui
sudo tar xvzf ~/rtgui-x.x.x.tgz -C ~/www/rtgui
Configurar rtgui, modificando de acuerdo a los datos de cada uno (directorios, dirección web)
cd ~/www/rtgui
cp config.php.example config.php
nano  ~/www/rtgui/config.php
Con esto último ya estaría todo listo, para poder acceder a rtgui solo hay que dirigirse a http://tu_server/rtgui
Basado en mi experiencia instalando rtorrent y en :  ubuntu_rtgui (wiki de rtgui) y Ubuntu home server setup steps