martes, 9 de abril de 2013

Instalación de PyLoad en el WD MyBook Live

Ya publiqué un artículo sobre aplicaciones extra que se le pueden instalar a éste NAS; un WD MyBook Live. En aquella ocasión las aplicaciones se instalaban fácilmente gracias a una herramienta creada a tal efecto; pero en mi opinión le faltaban dos cosas: un gestor de descargas y algún modo de mandar contenidos multimedia, especialmente música, al móvil en streaming, así que me armé de valor y decidí instalar manualmente por mi cuenta y riesgo aplicaciones para completar el NAS.
En éste artículo voy a instalar el gestor de descargas, y lo otro lo dejamos para más adelante.


A mi me han funcionado la instalación siguiendo el método que aquí expongo, pero no puedo garantizar que vaya a funcionar correctamente o que por algún problema o algún comando mal introducicido se pudiera estropear el NAS. Hazlo bajo tu propia responsabilidad.

PyLoad

PyLoad es un gestor de descargas, similar al famoso Jdownloade pero con la particularidad de que al contrario que Jdownloader puede instalarse sin necesidad de un servidor gráfico y podemos manejarlo todo desde su interfaz web; añadir enlaces, introducir captchas, configurarlo todo... Es libre y gratuito y al estar escrito en Phyton es completamente multiplataforma, así que funcionará sin problemas en nuestro NAS con Debian y procesador PowerPC. Tenéis más información en la web del proyecto. Vamos a ver como instalarlo:

Primero que nada vamos al repositorio oficial y nos descargamos el código fuente comprimido en un ZIP (link directo a la descarga). Ahora lo extraemos y lo copiamos a una carpeta del NAS. Yo lo he puesto en "/Public/WWW/pyload"


Ahora nos conectamos por SSH al NAS como ya expliqué en el primer artículo y pasamos a introducir los siguientes comandos:

Actualizar los repositorios:
apt-get update

Instalamos las dependencias necesarias; al parecer el paquete python-django ya no es necesario, pero yo si que lo tengo puesto (por si acaso...):

apt-get install screen mercurial python-openssl python-crypto python-pycurl python-imaging python-django tesseract-ocr

Nos colocamos en la carpeta dónde hemos copiado el programa: 
cd /DataVolume/shares/Public/WWW/pyload


EDITADO:

En teoría el comando anterior es tal cual está escrito, pero según parece hay gente a la que le funciona sin la primera barra, quedando así:
cd DataVolume/shares/Public/WWW/pyload


Y ejecutamos por primera vez el programa. Nos pedirá varias opciones de configuración, si no estáis seguros mejor dejarlo como viene por defecto.
python pyLoadCore.py -s

Al parecer ésto no le pasa a todo el mundo, pero si igual que a mi os salta el error: "Function _migrateUser: OperationalError: no such table: auth_user", se soluciona moviendo una carpeta:
mv /root/.pyload /root/.pyload.backup

Ahora lo ideal sería que al reiniciarse el NAS se ejecutara automáticamente el programa, pero no he conseguido hacerlo, según parece la interfaz web no arranca correctamente, así que hay que hacerlo a mano por ssh. En todo caso vamos a escribir un pequeño script con el que arrancar y parar el demonio pyload de forma fácil.
vi /etc/init.d/pyload.sh

Pulsamos "a" para entrar en modo de edición y pegamos lo siguiente:
#!/bin/sh
# Pyload daemon
#
# chkconfig: 345 99 30
# description: pyLoad is a fast, lightweight and full featured \
# download manager for many One-Click-Hoster, \
# container formats like DLC, video sites or just \
# plain http/ftp links
#
#
#
#

export PATH=/opt/bin:/opt/sbin:/sbin:/bin:/usr/sbin:/usr/bin
COMMAND="/DataVolume/shares/Public/WWW/pyload/pyLoadCore.py"

start() {
echo "Starting PyLoad"
cd /DataVolume/shares/Public/WWW/pyload
$COMMAND --daemon
}

status() {
echo -n "Status of PyLoad: "
cd /DataVolume/shares/Public/WWW/pyload
STATUS=`$COMMAND --status`
if [ $STATUS == "False" ] ; then
echo "Not running"
else
echo "Running as PID $STATUS"
fi
}
stop() {
echo "Stopping PyLoad"
cd //DataVolume/shares/Public/WWW/
$COMMAND --quit
}

case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
sleep 4
start
;;
status)
status
;;
*)
echo "Usage: $0 (start|stop|restart|status)"
exit 1
;;
esac
exit 0


 

Guardamos presionando "esc" para salir del modo de edición y escribiendo ":wq" y pulsando enter. Acto seguido le damos al script permisos de ejecución:

chmod +x /etc/init.d/pyload.sh


Listo, ahora podemos arrancar PyLoad con el comando:
/etc/init.d/pyload.sh start

Y pararlo con

/etc/init.d/pyload.sh stop


¡Listo! Ya me contaréis que tal os va.
En el próximo artículo del tema, instalamos BubbleUpnP server, una maravilla para los que tenemos un móvil Android

Editado

Tal y como me ha indicado Fasami, hay que añadir que para acceder a la interfaz web debemos introducir en un navegador: "http://mybooklive:8000/" (si no funciona, sustituir mybooklive por la IP local del mismo)

Actualización:
Ya he escrito el artículo sobre BubbleUPnP, está aquí

29 comentarios:

  1. ¿se puede instalar algún gestor de descargas de torrents?

    ResponderEliminar
    Respuestas
    1. De eso trataba el anterior artículo.

      http://masqfoto.blogspot.com.es/2012/10/puesta-punto-del-nas-wd-mybook-live.html

      Eliminar
  2. Muchas gracias me has abierto las nubes negras donde estaba encerrado. Me aprovecho de ti ¿sabes si se puede instalar Plex Server en Mybook?

    ResponderEliminar
    Respuestas
    1. No lo conocía. Para llevar el contenido a mi media center yo uso el servidor UpnP que lleva de serie (twonky) y para web se puede usar éste mismo o el acces book del feature pack del que hablé en el otro artículo. ¿Tiene alguna funcionalidad a parte de éstas el Plex media server?

      Para instalarlo, no tengo muy claro que se pueda hacer de forma fácil. El problema es que es software propietario, así que en su web de descargas ( http://www.plexapp.com/getplex/ ) sólo hay paquetes ya compilados, no está el código. Haría falta un archivo compilado para Debian y para procesadores Powerpc, y creo que ninguno de los que hay cumple los requisitos.

      Eliminar
  3. Perdona por el retraso en seguir la conversación. Plex te ofrece mejoras para seleccionar la película ya que crea una ficha por película con carátula, fotos, descripción actores, etc. Es mas visual que el Twonky, por lo menos el q trae de serie el WD.
    Busco la distribución debían a ver si me aclaras algo, muchas gracias

    ResponderEliminar
    Respuestas
    1. No pasa nada... A mi como me llega un correo, así que no tengo ese problema :)

      Después de leee tu comentario, ma pareció una función interesante y les escribí un mail a soporte de Plex preguntándoles si tenían pensado lanzar algo para nuestro NAS o una versión compatible con PowerPC. Ni siquiera se han molestado en contestar...

      Twonky es simplemente un servidor DLNA; si quieres que se vean descripciones, que te ordene las series y esas cosas puedes combinarlo con XBMC en el lado del cliente (No se si lo quieres para un ordenador o para que)

      No entiendo tu última frase... Nuestro NAS tiene un procesador PowerPC y utiliza como sistema operativo Debian, y eso es a lo que me refiero en mi comentario anterior.

      Eliminar
  4. No encuentro la página pero la comunidad de PLEX ha adaptado Plex a diferentes distribuciones de Linux y procesadores.
    Lo quiero usar con mi Smart TV de Samsung que tiene una App de Plexx y entonces puedo ver las películas del NAS como si fuera un video club, por género, caratulas, etc.

    ResponderEliminar
    Respuestas
    1. Mientras no tengamos el código fuente o una versión compatible con PowerPC, creo que nada se puede hacer (igual alguien con más experiencia podría hacer algo). Si encuentras la adaptación hecha por la comunidad, ponla y trataré de instalarlo, pero siendo un programa de código cerrado dudo que se haya podido hacer nada.

      Un saludo

      Eliminar
  5. Hola jorgecc!! he intentado realizar el tutorial pero me ha sido imposible acceder a la carpeta a la cual copie los archivos dentro del WD. Lo he intentado con los comandos que has puesto asi como acceder a la carpeta que creia q deberia estar pero me sigue poniendo "No such file or directory"
    Alguna sugerencia?? gracias de verdad... Un saludo

    ResponderEliminar
    Respuestas
    1. Mea culpa, efectivamente no puedes porque he puesto el comando mal, le falta una "/" al principio. El correcto es: "cd /DataVolume/shares/Public/WWW/pyload"

      Ahora mismo lo edito en el artículo.

      Eliminar
    2. No, me he liado yo, es como estaba antes. No se que te puede pasar. Revisa que todo esé al cual, y si no te va escríbeme otro comentario.

      Eliminar
  6. He intentado entrar en las carpetas que me facilitas "DataVolume/share... pero no me entra. le he dado al comando "ls" para ver los directorios que hay dentro de la carpeta y aun asi viendo que existen no me deja entrar... Alguna sugerencia?? Un saludo

    ResponderEliminar
    Respuestas
    1. Me sale lo siguiente:
      MyBookLive:/shares# cd /Public
      -bash: cd: /Public: No such file or directory

      Eliminar
    2. Si, el problema es que está buscando el directorio "/Public" en lugar del "Public" ya está corregido, también puedes probar desde shares con "cd Public" si te va funciona, pégame la salida del "ls"

      Eliminar
  7. Me temo q me sale algo parecido DataVolume/shares/Public/WWW/pyload: No such file or directory

    ResponderEliminar
    Respuestas
    1. Asegúrate de que tienes las carpetas WWW y dentro pyload. Sino, he editado esa línea, prueba a ver de la otra forma.

      Eliminar
  8. He estado probando esto y he ido haciendo todo lo que pone en el post y al final al iniciar poniendo "/etc/init.d/pyload.sh start" me dice:

    Starting Pyload
    Daemon PID 7460.

    Hay que hacer algo mas? porque no pasa nada.

    ResponderEliminar
  9. Vale ya esta solucionado, buscando info por internet he visto que para la interfaz web hay que usar el puerto 8000, asi que colocando http://mybooklive:8000/ ya he accedido. ahora a probarlo, no estaria mal avisarlo en el tuto que no lo pone, gracias por el tuto por cierto. ^_^

    un saludo.

    ResponderEliminar
    Respuestas
    1. De nada, me alegro de que te sirva :D


      Tienes toda la razón, se me pasó ponerlo, ahora lo edito...

      Eliminar
  10. He probado con putlocker y funciona, eso si con mega no me tira. Habra que seguir investigando.

    ResponderEliminar
  11. No tenemos nada aqui para nosotros?
    http://www.plexapp.com/connected/index.php

    ResponderEliminar
    Respuestas
    1. Ya me lo mencionaron y estuve mirando, no existe versión para PowerPC y el código fuente no está publicado para poder compilarlo por nuestra cuenta. No se puede instalar un servidor Plex.

      Eliminar
  12. Seguí todos los pasos y lo funciono sin problemas. Buenísimo el tutorial.
    Lo único diferente que para abrir el entorno web vino por default el puerto 8001.
    Y también tuve que crear un usuario porque con admin/admin no podía logearme.

    Ahora tengo una duda, como hago para cambiar la carpeta de destino para las descargas? Por default tengo /root/.payload/Download, y me quedo sin espacio en esa carpeta y no me deja bajar archivos grandes.
    Intente cambiarla desde la parte de configuracion, pero no me deja ir mas abajo de la carpeta /root/.payload

    Muchas gracias.

    ResponderEliminar
  13. Hola a todos... para hacer el streaming yo uso uno que se llama TvMobili, bien bueno, recomendado, casi gratis (digo porque dan 10GB gratis de streaming x mes, y bueno, tienen un licenciamiento extraño....) soporta subtitulos y toda la cosa... y tiene version de PPC (yo la instale y queda muy bien jejeje lo uso desde hace ya mas de 6 meses sin problemas!)

    ResponderEliminar
    Respuestas
    1. ¿Se ven bien los vídeos? Es lo que faltaría con BubbleUPnP...

      Eliminar
  14. al poner este comando:
    python pyLoadCore.py -s

    me sale este mensaje:

    Traceback (most recent call last):
    File "/DataVolume/shares/Public/WWW/pyload/pyLoadCore.py", line 48, in
    from module.network.RequestFactory import RequestFactory
    File "/DataVolume/shares/Public/WWW/pyload/module/network/RequestFactory.py", line 22, in
    from Browser import Browser
    File "/DataVolume/shares/Public/WWW/pyload/module/network/Browser.py", line 6, in
    from HTTPRequest import HTTPRequest
    File "/DataVolume/shares/Public/WWW/pyload/module/network/HTTPRequest.py", line 22, in
    import pycurl
    ImportError: No module named pycurl

    ResponderEliminar
  15. Hola ,enhorabuena por tu trabajo.
    He seguido el tutorial y lo he instalado todo,pero no se que problema hay que no consigo que el gestor empiece a descargar, todas las descargas se quedan en cola y de ahi no pasan.
    Sabes a que se debe?

    Gracias

    ResponderEliminar
    Respuestas
    1. Lo siento mucho, pero no se a que se puede deber, igual alguien por aquí puede ayudarte...

      Eliminar