Autoarranque de bazarr

Sección Unicamente para Tutoriales y Guías
Responder
Avatar de Usuario
klingsor
Pi Master
Pi Master
Mensajes: 460
Registrado: 14 Jul 2017, 12:16
Agradecido: 69 veces
Agradecimiento recibido: 86 veces

He instalado Bazarr en la distribución DietPi que tengo para descargas y todo correcto menos añadir al autoarranque el demonio:

Estas son las instrucciones que he seguido:

Código: Seleccionar todo

[Unit]
Description=Bazarr Daemon
After=syslog.target network.target
# After=syslog.target network.target sonarr.service radarr.service

[Service]
WorkingDirectory=/opt/bazarr/
User=your_user(username of your choice)
Group=your_group(group of your choice)
UMask=0002
Restart=on-failure
RestartSec=5
Type=simple
ExecStart=/usr/bin/python /opt/bazarr/bazarr.py
KillSignal=SIGINT
TimeoutStopSec=20
SyslogIdentifier=bazarr
ExecStartPre=/bin/sleep 30

[Install]
WantedBy=multi-user.target
He cambiado los path a la dirección donde yo los he instalado.

He visto que existen 5 formas de añadir un autoarranque en Linux, ¿podría usar alguna de ellas?

Sigo todos esos pasos y no hace nada, ahora ya no lo arranco ni con la orden desde terminal. ¿Qué está mal?

Saludos.
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

Muevo este tema a un nuevo hilo, para no mezclarlo con lo otro porque es de un software distinto.
Dos preguntas:
1. ¿Ese es tu archivo bazarr.service actualmente?
2. ¿Que te muestra si ejecutas manualmente "/usr/bin/python /opt/bazarr/bazarr.py" ?
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

Yo he probado con estos pasos:

1. Descargo (como root) el código de bazarr en /opt/bazarr

Código: Seleccionar todo

sudo git clone https://github.com/morpheus65535/bazarr.git /opt/bazarr
2. Cambio el propietario del directorio /opt/bazarr

Código: Seleccionar todo

sudo chown pi:pi /opt/bazarr -R
3. Creo (como root) el archivo de inicio automático

Código: Seleccionar todo

cat <<EOF>/etc/systemd/system/bazarr.service
[Unit]
Description=Bazarr Daemon
After=syslog.target network.target
# After=syslog.target network.target sonarr.service radarr.service

[Service]
WorkingDirectory=/opt/bazarr/
User=pi
Group=pi
UMask=0002
Restart=on-failure
RestartSec=5
Type=simple
ExecStart=/usr/bin/python3 /opt/bazarr/bazarr.py
KillSignal=SIGINT
TimeoutStopSec=20
SyslogIdentifier=bazarr
ExecStartPre=/bin/sleep 30

[Install]
WantedBy=multi-user.target
EOF
4. Arranco el servicio

Código: Seleccionar todo

sudo systemctl start bazarr
5. Activo el arranque automático

Código: Seleccionar todo

sudo systemctl enable bazarr
Con esto me funciona correctamente la instalación y el arranque
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

Nota: en el archivo /etc/systemd/system/bazarr.service he hecho estos cambios:
- Cambio el usuario y grupo a "pi", que es el usario bajo el que quiero que se ejecuten
- Cambio de python a python3
Avatar de Usuario
klingsor
Pi Master
Pi Master
Mensajes: 460
Registrado: 14 Jul 2017, 12:16
Agradecido: 69 veces
Agradecimiento recibido: 86 veces

La ruta donde está instalado es /mnt/dietpi_userdata/bazarr y si ejecuto /usr/bin/python /mnt/dietpi_userdata/bazarr/bazarr.py sí arranca:

Código: Seleccionar todo

Bazarr starting...
2020-01-03 09:32:14,703 - root                             (76f23000) :  INFO (main:2260) - BAZARR is started and waiting for request on http://0.0.0.0:6767/
Lo que pasa es que no me arranca con python 3, tengo python 2.7, 3.6 y 3.8 y no logro que se ejecute con la versión 3.8 por lo menos.

Código: Seleccionar todo

Python deprecation warning
Bazarr is now compatible with Python 3.6 and newer. You should upgrade Python as we'll drop support for Python 2.7.x by the end of January 2020.
If you are running under Docker, don't worry, we'll take care of this for you. Just pull the new image that should be available within a couple of days.
If you are running from source, it's up to you to install Python 3 (don't forget requirements.txt) and use it to run Bazarr.
Voy a ir siguiendo tus pasos desde el punto 2 con el cambio de propietario y a ver que sale.

Saludos y gracias.
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

klingsor escribió: 03 Ene 2020, 09:40 La ruta donde está instalado es /mnt/dietpi_userdata/bazarr y si ejecuto /usr/bin/python /mnt/dietpi_userdata/bazarr/bazarr.py sí arranca:
Genial, entonces la instalación es correcta, aunque no estoy seguro en Dietpi bajo qué usuario estás trabajando
klingsor escribió: 03 Ene 2020, 09:40Lo que pasa es que no me arranca con python 3, tengo python 2.7, 3.6 y 3.8 y no logro que se ejecute con la versión 3.8 por lo menos.
Si tienes python3, simplemente ejecuta:
/usr/bin/python3 /mnt/dietpi_userdata/bazarr/bazarr.py
Avatar de Usuario
klingsor
Pi Master
Pi Master
Mensajes: 460
Registrado: 14 Jul 2017, 12:16
Agradecido: 69 veces
Agradecimiento recibido: 86 veces

Al poner /usr/bin/python3 /mnt/dietpi_userdata/bazarr/bazarr.py me sale esto:

Código: Seleccionar todo

Python 3.6.0 or greater required. Current version is 3.5.3. Please upgrade Python.
Versiones Python:

Código: Seleccionar todo

python --version
Python 2.7.13
python3 --version
Python 3.5.3
Pero no sé porque me dice que la 3.5.3 cuando tengo instalada la 3.6 y la 3.8.

Eso por un lado, porque después de seguir tus pasos y llegar a sudo systemctl start bazarr me sale esto:

Código: Seleccionar todo

Failed to start bazarr.service: Unit bazarr.service is not loaded properly: Invalid argument.
See system logs and 'systemctl status bazarr.service' for details.
Este es el texto que hay en bazarr.service:

Código: Seleccionar todo

cat <<EOF>/etc/systemd/system/bazarr.service
[Unit]
Description=Bazarr Daemon
After=syslog.target network.target
# After=syslog.target network.target sonarr.service radarr.service

[Service]
WorkingDirectory=/mnt/dietpi_userdata/bazarr/
User=dietpi
Group=dietpi
UMask=0002
Restart=on-failure
RestartSec=5
Type=simple
ExecStart=/usr/bin/python3 /mnt/dietpi_userdata/bazarr/bazarr.py
KillSignal=SIGINT
TimeoutStopSec=20
SyslogIdentifier=bazarr
ExecStartPre=/bin/sleep 30

[Install]
WantedBy=multi-user.target
EOF
Mirando como están los sevicios para Radarr o Sonarr veo que el usuario es el propio programa en vez de dietpi:

Código: Seleccionar todo

[Unit]
Description=Sonarr (NzbDrone) Daemon (DietPi)
After=network.target

[Service]
User=sonarr
Group=dietpi
Type=simple
ExecStart=/usr/bin/mono -O=-aot /opt/NzbDrone/NzbDrone.exe -nobrowser -data=/mn$

[Install]
WantedBy=multi-user.target
Puede que el error de sudo systemctl start bazarr sea porque el usuario no está bien, ¿dónde puedo ver esto que me dice See system logs and 'systemctl status bazarr.service' for details?

Saludos.
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

El error "Failed to start bazarr.service" seguramente venga por el primer mensaje de error: "Python 3.6.0 or greater required"
Si al ejecutarlo a mano te da error, entonces al ejecutarlo desde systemctl ocurre lo mismo (línea ExecStart)
Sinceramente, no sé si en DietPi viene "de serie" un python 3 > 3.5, o quizá venga con otro nombre.
¿Cómo sabes que tienes instalada la 3.6 y la 3.8?

Respecto al usuario y al grupo, en efecto, depende de los permisos en las carpetas donde tengas las series.
En mi caso, sonarr corre bajo el usuario "pi" para estandarizar los permisos con sickrage, transmission y el resto.
Si quieres arrancar bazarr bajo el usuario "sonarr", entonces deberás asignar primero los permisos correspondientes:
sudo chown sonarr:dietpi /mnt/dietpi_userdata/bazarr -R
Avatar de Usuario
klingsor
Pi Master
Pi Master
Mensajes: 460
Registrado: 14 Jul 2017, 12:16
Agradecido: 69 veces
Agradecimiento recibido: 86 veces

Lo de tener la versión de python es porque se las he instalado yo siguiendo los pasos de su web y ayer mismo instale la 3.8.5 al ver que no reconocía la 3.6; debe haber una manera de hacer que arranque con la versión 3.8 o al menos lo reconozca, pero no encuentro la manera.

Respecto a lo del usuario por lo que he visto cada programa tiene su propio nombre de usario, es decir, en sonarr su usario es sonarr, en radarr es radarr y quería que en bazarr fuera el user bazarr.

De momento me apaño arrancando desde consola bazarr y le dejo trabajando un rato hasta que descarga los subtítulos, luego cierro terminal y se finaliza el programa.

Saludos.
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

Si has hecho el "mate; make install", habrá que ver en qué ruta te ha instalado la nueva versión.
y quizá sea necesario usar el update-alternatives para apuntar a la versión correcta de python 3
Bueno, hasta que resuelvas lo de la versión de python, puedes usar la v2 (obsoleta ahora en enero 2020) aunque te salga la advertencia.

Respecto a los usuarios, es normal lo que comentas, y es correcto hacerlo así, siempre y cuando lo tengamos en cuenta.
Me refiero a que si vamos a trabajar en las mismas carpetas con distintos usuarios, por lo general necesitaremos un grupo común para todos esos usuarios, y establecer permisos 660 dentro esos directorios de forma que cualquier usuario del grupo pueda crear archivos y directorios.
Es mucho más seguro tener usuarios separados para todo, claro, pero en esta escala, el nivel de dificultad no compensa la seguridad (y es que al final todos los usuarios que creemos tendrán acceso a los archivos de series y capítulos...)
Responder