PMS_Updater y problema solucionado

Status
Not open for further replies.

Gonzalo

Patron
Joined
Nov 29, 2014
Messages
457
Buenas,

Para aquellos que no lo conozcan, PMS_Updater es un script creado por Michael Stinaff (@mstinaff) que sirve para actualizar a la última versión nuestro Plex Media Server (tanto pública como PlexPass). El proyecto nace porque, actualmente, la versión del plugin de Plex sólo se actualiza con cada nueva versión de FreeNAS o_O.

UPDATE 05/07/2016: La nueva versión ya soluciona este bug.

Luego de actualizar mi versión (de 0.9.11.1 a 0.9.11.4), la sección de Agentes en la configuración del servidor ya no aparecía. Intentando encontrar el problema, vi que en mi versión anterior existía un link a la librería de Python que en la actualización ya no estaba. Así que agregué las siguientes líneas al script (en el método applyUpdate):

Code:
if [ ! -f $PMSPARENTPATH/$PMSLIVEFOLDER/libpython2.7.so ]; then
        ln -s $PMSPARENTPATH/$PMSLIVEFOLDER/libpython2.7.so.1 $PMSPARENTPATH/$PMSLIVEFOLDER/libpython2.7.so
fi


Y quedó funcionando! :cool:

Saludos!
 
Last edited:

Segarra

Dabbler
Joined
Jan 4, 2015
Messages
27
Perdona, soy muy nuevo con FreeNAS y todo este mundillo... Entiendo que para que funcione el scrpt correctamente, hay que añadir esas líneas al script??? En algún lugar especial? Y luego ejecutarlo?
 

Gonzalo

Patron
Joined
Nov 29, 2014
Messages
457
Hola Segarra,

Así es. Tienes que agregar esas líneas en el método applyUpdate del script. Para ejecutarlo, te recomiendo crear una Task (WebUI -> Tasks -> Cron Jobs -> Add Cron Job) con el siguiente Command:

jexec -n <nombre de la Jail donde está instalado Plex y el script> /<ruta del script>/PMS_Updater.sh -u <usuario> -p <contraseña> -a

El usuario y la contraseña solo se agregan si tienes una cuenta de Plex Pass.

Saludos!
 

Segarra

Dabbler
Joined
Jan 4, 2015
Messages
27
Hola Segarra,

Así es. Tienes que agregar esas líneas en el método applyUpdate del script. Para ejecutarlo, te recomiendo crear una Task (WebUI -> Tasks -> Cron Jobs -> Add Cron Job) con el siguiente Command:

jexec -n <nombre de la Jail donde está instalado Plex y el script> /<ruta del script>/PMS_Updater.sh -u <usuario> -p <contraseña> -a

El usuario y la contraseña solo se agregan si tienes una cuenta de Plex Pass.

Saludos!

Estoy un poco espeso... encuentro dentro del Script, 3 aparatados donde aparece applyUpdate y no me queda claro donde insertar esas lineas, entre que lineas se debe insertar?

Gracias
 

Gonzalo

Patron
Joined
Nov 29, 2014
Messages
457
No hay problema, te dejo donde deberías ponerlo:
Code:
applyUpdate()
{
    echo Removing previous PMS Backup ..... | LogMsg -n
    rm -rf $PMSPARENTPATH/$PMSBAKFOLDER 2>&1 | LogMsg
    echo Done. | LogMsg -f
    echo Stopping Plex Media Server .....| LogMsg -n
    service plexmediaserver stop 2>&1 | LogMsg
    echo Done. | LogMsg -f
    echo Moving current Plex Media Server to backup location .....| LogMsg -n
    mv $PMSPARENTPATH/$PMSLIVEFOLDER/ $PMSPARENTPATH/$PMSBAKFOLDER/ 2>&1 | LogMsg
    echo Done. | LogMsg -f
    echo Extracting $LOCALINSTALLFILE .....| LogMsg -n
    mkdir $PMSPARENTPATH/$PMSLIVEFOLDER/ 2>&1 | LogMsg
    tar -xj --strip-components 1 --file $LOCALINSTALLFILE --directory $PMSPARENTPATH/$PMSLIVEFOLDER/ 2>&1 | LogMsg -f
    if [ $? -ne 0 ]; then {
        echo Error exctracting $LOCALINSTALLFILE. Rolling back to previous version. | LogMsg -f
        rm -rf $PMSPARENTPATH/$PMSLIVEFOLDER/ 2>&1 | LogMsg -f
        mv $PMSPARENTPATH/$PMSBAKFOLDER/ $PMSPARENTPATH/$PMSLIVEFOLDER/ 2>&1 | LogMsg -f
    } else {
        echo Done. | LogMsg -f
    } fi

    if [ ! -f $PMSPARENTPATH/$PMSLIVEFOLDER/libpython2.7.so ]; then
        ln -s $PMSPARENTPATH/$PMSLIVEFOLDER/libpython2.7.so.1 $PMSPARENTPATH/$PMSLIVEFOLDER/libpython2.7.so
    fi
    echo Done. | LogMsg -f

    echo Starting Plex Media Server .....| LogMsg -n
    service plexmediaserver start 2>&1 | LogMsg
    echo Done. | LogMsg -f
}
 

Segarra

Dabbler
Joined
Jan 4, 2015
Messages
27
Mañana lo miro, gracias, está noche toca trabajar

Enviado desde mi Nexus 5 mediante Tapatalk
 

Segarra

Dabbler
Joined
Jan 4, 2015
Messages
27
No hay problema, te dejo donde deberías ponerlo:
Code:
applyUpdate()
{
    echo Removing previous PMS Backup ..... | LogMsg -n
    rm -rf $PMSPARENTPATH/$PMSBAKFOLDER 2>&1 | LogMsg
    echo Done. | LogMsg -f
    echo Stopping Plex Media Server .....| LogMsg -n
    service plexmediaserver stop 2>&1 | LogMsg
    echo Done. | LogMsg -f
    echo Moving current Plex Media Server to backup location .....| LogMsg -n
    mv $PMSPARENTPATH/$PMSLIVEFOLDER/ $PMSPARENTPATH/$PMSBAKFOLDER/ 2>&1 | LogMsg
    echo Done. | LogMsg -f
    echo Extracting $LOCALINSTALLFILE .....| LogMsg -n
    mkdir $PMSPARENTPATH/$PMSLIVEFOLDER/ 2>&1 | LogMsg
    tar -xj --strip-components 1 --file $LOCALINSTALLFILE --directory $PMSPARENTPATH/$PMSLIVEFOLDER/ 2>&1 | LogMsg -f
    if [ $? -ne 0 ]; then {
        echo Error exctracting $LOCALINSTALLFILE. Rolling back to previous version. | LogMsg -f
        rm -rf $PMSPARENTPATH/$PMSLIVEFOLDER/ 2>&1 | LogMsg -f
        mv $PMSPARENTPATH/$PMSBAKFOLDER/ $PMSPARENTPATH/$PMSLIVEFOLDER/ 2>&1 | LogMsg -f
    } else {
        echo Done. | LogMsg -f
    } fi

    if [ ! -f $PMSPARENTPATH/$PMSLIVEFOLDER/libpython2.7.so ]; then
        ln -s $PMSPARENTPATH/$PMSLIVEFOLDER/libpython2.7.so.1 $PMSPARENTPATH/$PMSLIVEFOLDER/libpython2.7.so
    fi
    echo Done. | LogMsg -f

    echo Starting Plex Media Server .....| LogMsg -n
    service plexmediaserver start 2>&1 | LogMsg
    echo Done. | LogMsg -f
}
Joe... claro que no me cuadraba nada, me había bajado el script, mal... dando al botón de la derecha encima del script y guardar como!!! Me había bajado una cosa rara!!!! :D
 

Segarra

Dabbler
Joined
Jan 4, 2015
Messages
27
Pregunta... una vez ejecutado el script, lo que hace es comprobar si hay una nueva versión y en caso afirmativo, en Plugins aparece el botón Actualización...? al menos eso me ha sucedido... lo que luego he pulsado en Actualización y ha bajado los paquetes y cuando estaba con el UPGRADE se ha quedado... no me ha petado el Plex, pero tampoco se ha actualizado. He tenido que configurarlo de 0 de nuevo...
Volveré a probarlo en cuanto tenga un segundo
 

Gonzalo

Patron
Joined
Nov 29, 2014
Messages
457
Utilizar el script es lo mismo que actualizar Plex de forma manual dentro de la Jail. Como consecuencia, la WebUI no se entera de este cambio (y no hay solución por ahora) y te sigue mostrando el botón de Actualizar (el cual NO debes utilizar).
 

Segarra

Dabbler
Joined
Jan 4, 2015
Messages
27
Vale, pues lógicamente le he dado, bueno, ya lo tengo funcionando de nuevo. Volveré a probar el script, cuando le he dado, me ha puesto Done! Pero o no he esperado lo suficiente o se ha quedado pillado, porque se ha quedado con el Done! En la pantalla....
Bueno, es lo que tiene experimentar... :)

Enviado desde mi Nexus 5 mediante Tapatalk
 

Segarra

Dabbler
Joined
Jan 4, 2015
Messages
27
Ya lo he hecho funcionar :) me faltaba "-a" para que hiciese la actualización automática :)
Un 10!!
 
Status
Not open for further replies.
Top