Transferencia de datos

Pues ale, acostumbrada a usar SNMP, me he visto obligada a buscar una alternativa para mirar el estado de la transferencia de datos de un servidor al no ser posible la instalación de este servicio :( (no por problemas técnicos, sino diplomáticos! xD)

El scriptillo es un poco cutre pero vale para ello. Usa el comando ifconfig y la transferencia total transmitida por el interfaz y hace un cálculo diferencial.

Espero que sea de ayuda a alguien :)


#!/bin/bash
# Author: Blackhold (https://blackhold.nusepas.com)

#fichero de datos
FILE=/root/scripts/check_hw/rxtx.txt
INTERVAL=60 #en segundos
# añadir al crontab: */1 * * * * root /root/scripts/check_hw/check_eth0.sh

#transferencia en bytes
RXA=`/sbin/ifconfig eth0 |grep “RX bytes” |cut -d “:” -f 2 | cut -d ” ” -f 1`
TXA=`/sbin/ifconfig eth0 |grep “RX bytes” |cut -d “:” -f 3 | cut -d ” ” -f 1`

if [ -e $FILE ]; then
RXO=`tail -1 $FILE |cut -d “;” -f 2 |cut -d “:” -f 2`
TXO=`tail -1 $FILE |cut -d “;” -f 3 |cut -d “:” -f 2`

((RXS=$RXA-$RXO))
((TXS=$TXA-$TXO))

((RXS=$RXS/$INTERVAL/1024))
((TXS=$TXS/$INTERVAL/1024))

#echo “Recv: $RXS kbps”
#echo “Send: $TXS kbps”
else
echo “################# TASA DE TRANSFERENCIA DE DATOS
#################” > $FILE
echo “” >> $FILE
fi

echo “time:`date`;RX:$RXA;TX:$TXA;DOWN:$RXS kbps;UP:$TXS kbps” >> $FILE

6 Comments

  1. awk ‘{print $1}’

    muchas gracias a todos los que me habéis hecho recomendaciones, a ver si algún día encuentro el tiempo y las ganas para empollarme todo el tema de las expresiones regulares que me ahorraría mucho trabajo :D

    Respon

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *

Aquest lloc utilitza Akismet per reduir els comentaris brossa. Apreneu com es processen les dades dels comentaris.