Ir al contenido principal

Desactiva los Torrents automáticamente cuando tu ADSL falla y estás con 3G

Nivel de dificultad: Medio.






Tengo un Router de Telefónica con puerto USB, al que se le puede conectar un pincho 3G que se activa automáticamente cuando la ADSL falla. Mi Home Server, una Raspberry Pi, tiene QBitTorrent ejecutándose continuamente, pero no me interesa que cuando se activa automáticamente mi conexión 3G, que es de Jazztel, QBitTorrent se meriende en un rato mi plan de datos. Así que he hecho un script simplón que me activa y desactiva QBitTorrent en base a la conexión que tengo.




#!/bin/bash
FIJO=Telefonica
TORRENT=qbittorrent-nox


while true
do
        IP=`curl -s checkip.dyndns.com | \
        grep -Eo "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" 2>/dev/null`
        if [[ -n "$IP" ]]; then
                ADSLISP=`whois $IP | grep -m 1 -o $FIJO`
        else
                ADSLISP="SinInternet"
        fi
        echo $ADSLISP
        PIDTORRENT=`pidof $TORRENT`

        if [[ "$ADSLISP" != "$FIJO" ]]; then
                echo No estoy ahora con $FIJO
                if [ $PIDTORRENT ]; then
                        echo $TORRENT está en marcha. Apagando:
                        killall $TORRENT
                else
                        echo $TORRENT ya está apagado
                fi
        else
                echo Mi IP es $IP y mi conexión es de $ADSLISP
                if [ ! `pidof $TORRENT` ]; then
                        echo $TORRENT no está en marcha. Arrancando:
                        nice -n 10 $TORRENT > /dev/null &
                fi

        fi
        sleep 30
done

Antes de ejecutar el script, asegurate que tienes los programas whois y curl instalados.

Además, en mi caso, como tengo Telefónica, la variable FIJO del script tiene el valor Telefonica. Si tienes otro proveedor de ADSL, tendrás que cambiar el valor de la variable adecuadamente. Para averiguar este valor, primero debes saber tu IP externa, y acto seguido, usar el siguiente comando para averiguar que valor vas a usar:

whois 1.2.3.4 

donde debes sustituir 1.2.3.4 por tu IP externa.

Busca una cadena identificativa que sea diferente a la que tenga tu pincho 3G. Por ejemplo, en el caso de las ADSL de Jazztel puedes usar el valor JAZZSEC. En el caso de ONO, ONO-MNT

Sustituye también el valor de la variable TORRENT por tu programa de torrents favorito, en mi caso es qbittorrent-nox .

El script presenta mensajes que te servirán para analizar lo que está haciendo. Cuando lo arranquemos automáticamente redirigiremos estos mensajes a  /dev/null para que no muestre nada.

Guarda este script en un archivo nuevo, por ejemplo, /usr/local/bin/qbtserver . Añade la siguiente línea a /etc/rc.local :

su -c "/home/pi/bin/qbtserver > /dev/null" pi &

Cuando arranques tu Home Server, arrancará automáticamente qbittorrent-nox siempre que tu ADSL esté en funcionamiento.

Comentarios

Entradas populares de este blog

El Home Server Perfecto con una Raspberry Pi

Nivel de Dificultad: Alto Como ya os he comentado , Santa Claus me regaló una Raspberry Pi estas Navidades. Así que tenía que ver que podía hacer con ella. Lo primero que se me ocurrió fue montar un Media Center, ya que, al ser completamente silenciosa, y al disponer de puerto HDMI, la RasPi podría ser una candidata perfecta para un XBMC . Sin embargo, me atraía más la idea de montar un Home Server , junto con un disco duro USB externo. Tengo la suerte de vivir en una finca moderna totalmente cableada en cada estancia, como si de una oficina con tomas de red se tratara. En la finca tenemos, desde el 2003, una ADSL que compartimos vía ethernet y varias WiFis, con un PC (montado con piezas de retiro) con Linux actuando de Home Server, del que yo me encargo. Es algo así como una rolling distribution , pero en hardware; con el paso de los años lo he ido actualizando con piezas tal y como las retiraba de otros PCs y mi  Frankenslinux  sigue al pie del cañón. Sin emba...

AutoFirma - Guía Breve y Definitiva de Instalación - 2020 (Debian/Ubuntu/Mint)

AutoFirma es uno de esos programas que, si trabajas con la Administración, es imprescindible. Como otros programas hechos por empresas de desarrollo de software contratadas por el Gobierno de España, están desarrollados en Java y, por lo tanto, funcionan en Windows, MacOS y Linux. Sin embargo, como casi siempre, utilizando soluciones de desarrollo muy justitas y con soporte profesional nulo o casi nulo.

CUPS Cloud Print: Imprime desde Linux a Google Cloud Print

Nivel de difocultad: Bajo Una cosa interesante de Android es que si tienes una impresora con soporte Cloud Print ( o sin, también ) en tu casa, estés donde estés con tu móvil o tableta, podrás imprimir remotamente a tu impresora. En cambio, con tu portátil, a menos que tengas una VPN, en el momento que no estés conectado a tu LAN, te has quedado sin poder imprimir.