Cómo instalar Plexpy en Ubuntu

Una eficaz y potente herramienta para monitorizar la actividad de tu Plex Media Server

PlexPy
Cuando tu servidor Plex alcanza una cantidad de contenido multimedia considerable y cuando, además, compartes tus contenidos con decenas de usuarios, es una buena idea tener algún tipo de sistema de monitorización. Puede que te interese saber quién está viendo, y cuándo, tu biblioteca multimedia, saber cuáles son los contenidos más demandados, desde qué dispositivos se consumen, etcétera.
Para ello, y de entre las varias opciones que existen, PlexPy es posiblemente una de las más completas y potentes. Se trata de un sistema de monitorización escrito en python y que ha sido diseñado específicamente para Plex. Incluye una increíble cantidad de características que permiten monitorizar la actividad en tiempo real del servidor Plex, acceder a registros históricos, configurar todo tipo de alertas personalizadas, estadísticas, actividad por usuario, y muchas más.

Instalación de Plexpy

El proceso de instalación en Ubuntu es bien simple, lo resumo a continuación:

  1. Si no tenemos aún instalado git, lo instalamos:
    sudo apt-get install git-core
  2. Instalamos PlexPy:
    cd /opt
    sudo git clone https://github.com/drzoidberg33/plexpy.git
    cd plexpy
    sudo python PlexPy.py
  3. Para salir de la pantalla que se nos muestra a continuación, tecleamos:
    :q
  4. En un navegador, introducimos la IP del servidor donde hayamos instalado PlexPy seguido del puerto 8181. Por ejemplo, 192.168.0.1:8181
  5. Esto nos muestra la pantalla de configuración de PlexPy. Introducimos nuestro usuario y contraseña de Plex y ya está. Sólo tenemos que configurarlo a nuestro gusto.
  6. Finalmente, para arrancar automáticamente Plexpy como servicio, tecleamos lo siguiente:
    sudo adduser –system –no-create-home plexpy
    sudo chown plexpy:nogroup -R /opt/plexpy
    sudo ln -s /opt/plexpy/init-scripts/init.ubuntu /etc/init.d/plexpy
    sudo update-rc.d plexpy defaults
  7. Ya hemos terminado. Para arrancar el servicio:
    sudo service plexpy start

La página del proyecto en GitHub, donde se puede obtener el código fuente (y donde se pueden consultar instrucciones para su instalación en otros sistemas operativos), es la siguiente: https://github.com/drzoidberg33/plexpy

Cambiando la ubicación de los contenidos multimedia en Plex

Paso a paso para no perder la indexación de los contenidos multimedia

Migrar contenido multimedia en Plex
Cuando migré MartinServer a un Hp Proliant G8 mantuve temporalmente todos mis contenidos multimedia en las dos NAS  Western Digital de de 3 TB y  de 6 TB que venía utilizando hasta entonces. Pero las bibliotecas de Plex (películas, series, fotos y música) habían crecido exponencialmente desde la primera instalación del Servidor Plex, y por tanto había llegado la hora de migrarlos a los dos discos de 6TB que había añadido al servidor HP Proliant G8.

La forma fácil

El procedimiento viene bien explicado en las páginas de soporte de Plex. Si lo que necesitas es solamente cambiar el contenido a un nuevo disco, la forma más sencilla es ponerle exactamente el mismo nombre al nuevo disco, y conservar la misma ruta de acceso para todos los contenidos. El procedimiento en Ubuntu sería algo así:

  1. Tienes que detener el servidor Plex. Abre una terminal y teclea:
    sudo service plexmediaserver stop
  2. Cambiamos el nombre del disco actual. Por ejemplo, si se llama “Plex”, lo renombramos a “PlexAntiguo”. En el terminal:
    sudo mv /media/Plex /media/PlexAntiguo

    Suponiendo que la partición del disco sea /dev/sdb1, tecleamos:
    sudo mount /dev/sdb1 /media/PlexAntiguo
  3. Ahora montamos el nuevo disco y le ponemos el mismo nombre que al original (en este caso, “Plex”):
    sudo mkdir /media/Plex

    Suponiendo que la partición del nuevo disco sea /dev/sdb2 (esto lo comprobamos con el comando “fdisk -l”), tecleamos:
    sudo mount /dev/sdb2 /media/Plex

    Añadimos el nuevo disco a fstab para que se monte al inicio:
    sudo nano fstab

    Añadimos la siguiente línea a fstab:
    /dev/sdb2 /media/Plex ext4 defaults 0 2

    Si hay una entrada para el disco antiguo en fstab, la eliminamos. Guardamos fstab y actualizamos:
    sudo mount -a
  4. Ya estamos en condiciones de mover todo el contenido del viejo al nuevo disco:
    mv  -v /media/PlexAntiguo/* /media/Plex/

    Si son Terabytes de contenido… paciencia.
  5. Una vez que acabe de moverse todo el contenido, desmontamos el disco antiguo:
    sudo umount /media/PlexAntiguo

    Ya podemos desconectar el disco antiguo. Sólo queda iniciar el servidor Plex:
    sudo service plexmediaserver start

    Y eso sería todo. Debería funcionar con normalidad.

La vía del penitente

Pero en ocasiones esta forma simple no nos sirve. Por ejemplo en mi caso, yo había creado mis bibliotecas de Plex en el NAS de 3TB, y cuando se llenó añadí otro NAS de 6TB. Esto supuso duplicar la estructura de carpetas, solución que no me gustaba nada. Aprovechando el cambio a los dos nuevos discos de 6TB, quería aprovechar para dejar una estructura limpia, algo así:

/Plex/
    /Peliculas/
        /NombredePelicula (año)/
            NombredePelicula (año).ext
            SubtitulodePelicula (año).spa.srt
    /Series/
        /NombreSerie/
            /Temporada 01/
                NombreSerie - s01e01.ext
                SubtituloSerie - s01e01.spa.srt

En este caso, el procedimiento se complica un poco:

  1. Deshabilitar la opción “Vaciar la papelera automáticamente después de cada escaneado”. En la interfaz web de Plex hay que ir a “Ajustes/Biblioteca/” y desmarcar la opción que se reproduce en la imagen:
    deshabilitar-vaciar-papelera
  2. Detener el servidor Plex. Abre una terminal y teclea:
    sudo service plexmediaserver stop
  3. Copiar (no mover) el contenido del viejo al nuevo disco:
    cp -R /media/PlexAntiguo/ /media/PlexNuevo/

    Aquí no tenemos que conservar la misma estructura. Es el paso que podemos aprovechar para reestructurar nuestras bibliotecas.
  4. De nuevo en la interfaz web de Plex, nos vamos a “Librerías/Añadir Biblioteca”. Aquí vamos añadiendo las diferentes bibliotecas de películas, series, música o fotos con la ubicación del disco nuevo:
    añadir-a-la-biblioteca
  5. Una vez que se han añadido todas las nuevas bibliotecas, iniciamos Plex Media Server:
    sudo service plexmediaserver start
  6. Actualiza las bibliotecas desde la interfaz web. Si tienes mucho contenido multimedia, tardará bastante. Cuando termine el proceso, verás que todo el contenido aparece duplicado.
  7. Desde la interfaz web, buscamos las bibliotecas correspondientes al disco antiguo. Seleccionamos “editar” y borramos las carpetas correspondientes al disco antiguo una a una.
    borrar-biblioteca
  8. Volvemos a actualizar las bibliotecas. Ya sólo debe aparecer el contenido del nuevo disco. Para comprobar que no hay errores, utilizamos el filtro de contenidos “buscar duplicados”. Si hay algún duplicado, seguramente se debe a un error de indexación. Editamos manualmente los contenidos mal indexados.
  9. Finalmente, vaciamos la papelera de las bibliotecas.
  10. Y con esto ya está: migrado el contenido de Plex Media Server a un disco nuevo y con una estructura distinta.

Mi nuevo servidor Plex

Sacando partido a MartinServer con un gestor de contenidos multimedia

plex
Para quien no lo conozca, Plex es un gestor de contenidos multimedia cliente-servidor. Instalándolo en nuestro propio equipo (un pc normal y corriente, un servidor, un NAS o incluso una Raspberry-Pi), podemos organizar y visualizar en una interfaz muy amigable nuestras películas, series, fotos, canciones y cualquier otro tipo de archivos multimedia. Añade, además, todo tipo de información (carátulas, director, actores, sinopsis,  trailers, etc) sobre cada película o serie de forma automática.

Consta, como hemos dicho, de una parte servidor y una parte cliente:

Plex Media Server

El servidor, el Plex Media Server, lo podemos instalar en Windows, Mac OS, Linux, FreeBSD o en un NAS. Es el que se encarga de gestionar los archivos multimedia, organizándolos en librerías (“música”, “películas”, “series”, etc) y se encarga de enviar los contenidos hacia los dispositivos reproductores (clientes). Una de las características más interesantes es la “transcodificación”, que, explicándolo pronto  y mal, significa que Plex analiza dónde quieres reproducir tu contenido y si, por ejemplo en un teléfono móvil, tiene restricciones de bitrate o no puede interpretar algún códec específico, Plex transforma (transcodifica) ese contenido de manera que pueda ser visualizado en tu reproductor, no importa las limitaciones que tenga. Otra función interesante es que tu servidor es accesible desde cualquier lugar a través de internet, por lo que te llevas tus películas y series contigo allá a donde vayas. Y, además, te permite compartir tu contenido con los amigos que quieras, se encuentren en la parte de mundo que se encuentren.

Reproductores

Hay reproductores disponibles para las principales plataformas: teléfonos móviles (android e iPhone), smart TVs, PlayStation, Roku, etc, así como una interfaz web llamada Plex Web App.

Plex no es software libre, a pesar de estar basada en Kodi (la antigua XBMC). Sin embargo, se puede utilizar gratuitamente, aunque hay una versión de pago (PlexPass) que ofrece funcionalidades avanzadas, y algunos clientes (el de iPhone, que yo sepa) son de pago también. En cualquier caso, tanto la funcionalidad como la usabilidad de Plex lo hacen, desde mi punto de vista, la mejor opción.

Instalación

En primer lugar, creamos una cuenta de usuario de Plex en https://www.plex.tv/sign-up/. Seguidamente, descargamos en nuestro equipo el fichero de instalación (MartinServer usa Ubuntu Server, por lo que me descargué el instalador para Linux) :

wget https://downloads.plex.tv/plex-media-server/xxxxxxx/plexmediaserver_xxxxxxx_amd64.deb   (substituir xxxxxxx por la última versión de Plex)

A continuación instalamos el paquete:
sudo dpkg -i plexmediaserver_xxxxxxx_amd64.deb   (substituir xxxxxxx por la última versión de Plex)

A partir de ese momento, seguimos las instrucciones de instalación. Borramos el fichero de instalación.
rm plexmediaserver_xxxxxxx_amd64.deb   (substituir xxxxxxx por la última versión de Plex)

Y ya está listo para utilizar.

Configuración

Para configurar Plex Media Server, si estamos en la misma máquina en la que lo hemos instalado, entramos en cualquier navegador a la URL http://127.0.0.1:32400/web. Si es desde otro equipo, obviamente tendremos que substituir la IP. Aquí tenemos que introducir nuestro nombre de usuario y contraseña de Plex.

Ahora ya lo único que tenemos que hacer es crear nuestras propias bibliotecas de contenido (películas, series, musica, etc), decirle a Plex en qué ubicación están almacenadas… y nada más. Ya podemos disfrutar de nuestro propio servidor de contenidos multimedia. Eso sí, es muy recomendable, para que Plex reconozca adecuadamente los contenidos y pueda bajar el contenido adicional (carátulas, autores, actores, trailers, sinopsis, etc) seguir las recomendaciones de nomenclatura de Plex.