Control de aMule (actualizado 2023)




He mejorado el anterior script que controla aMule.

La misión de este script es la de vigilar que aMule sigue en ejecución y si no es así, vuelva a ejecutarlo.

Aunque aMule, en su versión 2.3.3 es bastante mas estable que sus anteriores versiones, puede ocurrir, que en ciertas ocasiones, este se cierre inesperadamente, creando el problema de no poder seguir compartiendo nuestros archivos. En mi caso, aMule ha llegado a cerrarse cuando termina la descarga de un archivo de gran tamaño.

He simplificado el script con un par de condicionales if anidados, que a diferencia del antiguo script, se mantiene el archivo mulelock siempre que aMule está en ejcución.

IMPORTANTE:

Antes de poner en funcionamiento este script, debes tener configurado aMule tal como se explica en este enlace (configuración recomendada)

aMule y amuled no pueden correr juntos, de hecho si tienes alguno en ejecución el otro no se abrirá y dará un error.
El archivo de configuración de aMule y amuled es el mismo, por lo que para configurar amuled, hazlo a traves de aMule.

¿Qué requisitos son necesarios para abrir o reabrir amuled?

    1 - Que el archivo muleLock no exista.
    2 - Que el servidor amuleweb esté cerrado

El script

#!/bin/bash
#https://chapuboot.blogspot.com/
#última modificación 25/03/2023
#chequea si aMule esta corriendo

if pgrep amuled > /dev/null 2>&1 
then
        echo "                                        "
        date +%c
        echo "                                        "
        echo "********************"
        echo "amuled esta corriendo" 
        echo "********************"
        echo "                                         "
 else
        echo "                                                          "
        echo " amuled está cerrado, abriendo"
        echo ".........................................................."     
                       
                if [ -f ~/.aMule/muleLock ]; then
                        echo "                                            "
                        echo "muleLock existe, borrando."
                        rm ~/.aMule/muleLock
                        echo "                                            "            
                        echo "mulelock ha sido borrado"
                        killall -9 amuleweb > /dev/null 2>&1
                        sleep 5s
                        amuled & > /dev/null 2>&1
                        echo "         "            
                        echo "corriendo"
                else
                        echo "mulelock no existe"    
                        killall -9 amuleweb > /dev/null 2>&1
                        sleep 5s
                        amuled & > /dev/null 2>&1
                        echo "         "            
                        echo "corriendo"
        fi

fi

El primer condicional if comprueba que amuled está en ejcucion, si es así,  muestra un mensaje que dice " amuled está corriendo" y el script termina ahí.
Si no está corriendo, se comprueba que el archivo amulelock existe, si es así, lo borra, cierra el servidor  amuleweb (si estuviese abierto) y abre amuled. Y si no existe el archivo amulelock, cierra el servidor amuleweb (si estuvise abierrto) y abre amuled.

Para quitar los mensajes de error y apertura de programa, he llevado dicha información a /dev/null, así me aseguro que el script solo imprime en el log los mensajes que me interesan.

Así que lo copiamos todo en un archivo de texto y lo guardamos con el nombre que queramos. Yo lo he guardado con el nombre aMuleLock.sh

También lo puedes descargar desde aquí

Una vez hayas descargado o guardado el script, deberás hacerlo ejecutable, para ello en una terminal escribe:

chmod +x aMuleLock.sh

La automatizacion 

Se puede ejecutar este script a través de Cron que sirve para automatizar tareas, yo lo haré en el minuto 5 de cada hora.

La tarea se debe ejecutar como usuario, no como root, ya que aMule no permite ejecutarse como superusuario.

Crearemos un archivo Crontab, así que desde la terminal ejecutamos el siguiente comando:

crontab -e

Nos pedirá que editor de textos queremos usar de una lista, yo he elegido el editor nano y pegamos el siguiente comando:

*/5  * * * *  ~/aMuleLock.sh >>  ~/aMuleLock.log 2>&1

Esto quiere decir que en el minuto 5 de cada hora se ejecutará el script aMuleLock.sh y nos creará un archivo Log con la información pertinente.



En Monitor del sistema podemos comprobar si amuled y amuleweb están en ejecución.



En nuestra carpeta Home se habrá creado un archivo log, con la información de la vigilancia del minuto 5 de cada hora (aMuleLock.log)



Si accedemos al archivo log, veremos la información de ejecutar nuestro script cada 5 minutos.



Con el archivo log que crea Cron, podemos saber que nuestra tarea está funcionando de forma correcta.

¡¡¡Recuerda!!!

aMule y amuled no pueden correr juntos, ahora para usar aMule deberás usar el programa aMuleGUI.

Abre aMuleGUI y conectate a localhost y puerto 4712 introduce la contraseña para acceder a aMule


Para usar aMuleGUI debes tener configurado el control remoto de aMule, véase aquí



Mas información

aMule se bloquea con bastante frecuencia. ¿Puedo configurarlo para que se reinicie cada vez que falla?
    







Comentarios

Entradas populares de este blog

TP-Link WR841ND repetidor WIFI

Instalar y Configurar aMule en Ubuntu

II. Vodafone Technicolor Tc7230 modo bridge.