Página siguiente Página anterior Índice general

3. Scripts

Estos scripts hay que hacerlos ejecutables y ponerlos en un directorio que esté dentro del PATH.

3.1 ppp-on

Script de conexión. Nos permite conectarnos con el usuario que queramos (si es que tenemos más de una cuenta, claro está).

______________________________________________________________________
#!/bin/sh
######################################################################
#
#  Determinar el usuario con el que conectarse.
#  Cambiar <usuario> por el usuario por defecto.
#
if [ "$1" = "" ]; then
        USER="<usuario>"
else
        USER=$1
fi
echo Entrando como $USER

######################################################################
#
#  Cambiar la configuración por la tuya ;-)
#     atdtXXXX Número de teléfono de Infobirria Plus de tu zona
#        En mi caso,  atdt918561000
#     38400    es la velocidad máxima que puede soportar el módem
#        Esa velocidad, para mi módem (33600), es un buen valor
#
exec /usr/sbin/pppd                                     \
        connect '/usr/sbin/chat -v "" \
        atdt055 CONNECT ""'           \
        crtscts modem user $USER      \
        noipdefault debug defaultroute /dev/modem 38400
______________________________________________________________________

3.2 ppp-off

Script de desconexión. Un método más drástico puede ser: killall ppp.

______________________________________________________________________
#!/bin/sh
######################################################################
#
# Determinar el dispositivo a parar.
#
if [ "$1" = "" ]; then
        DEVICE=ppp0
else
        DEVICE=$1
fi

######################################################################
#
# Si el archivo pid del dispositivo existe, entonces el programa está
# ejecutándose; así que pararlo.
if [ -r /var/run/$DEVICE.pid ]; then
        kill -INT `cat /var/run/$DEVICE.pid`
#
# Si kill no funciona, entonces no hay ningún proceso ejecutándose con ese
# pid.
        if [ ! "$?" = "0" ]; then
                rm -f /var/run/$DEVICE.pid
                echo "ERROR: Archivo pid borrado"
                exit 1
        fi
#
# El programa pppd se ha quitado.
        echo "Conexión PPP en $DEVICE terminada."
        exit 0
else
#
# El proceso ppp no está ejecutándose en $DEVICE
        echo "ERROR: No hay conexión PPP activa en $DEVICE"
        exit 1
fi
______________________________________________________________________

3.3 getmail

Script para el correo, tanto para enviar como para recibir.

______________________________________________________________________
#!/bin/sh -f
######################################################################
#
# Script de unsCAred (modificado un pelín por mí ;-) )
#

######################################################################
#
# Determinar el dispositivo con el que conectamos.
#
if [ "$1" = "" ]; then
        DEVICE=ppp0
else
        DEVICE=$1
fi

######################################################################
#
# Lo primero mirar si estamos conectados ... (el resto se explica solo)
#
if [ -e /var/run/$DEVICE.pid ]; then
        echo 'Bajando el correo ...';
        /usr/bin/fetchmail -L /var/log/fetchmail.log
        echo 'Enviando el correo pendiente ...';
        /usr/sbin/sendmail -q -v
        # Lo repetimos dentro de 5 minutos y el resultado al mail
        /usr/bin/at -m -f /usr/local/sbin/getmail now + 5 minutes
else 
        echo 'ERROR: No hay conexión PPP activa en $DEVICE"
fi
______________________________________________________________________


Página siguiente Página anterior Índice general