Mas de uno debe haber tenido el problema de quedarse sin espacio alguna vez y x eso despues q regreso, tuvo q empezar a matar ficheros o solucionar el problema de q algun q otro programa se clavo o algo parecido x falta de espacio, bueno aca escribi un sencillo programita en bash
para evitar ese molesto problema, el programita se ejecuta via cron, y envia un mensaje a un mail y a un celular indicandonos el espacio en el disco y la hora en q se genero la advertencia (x estos pagos, no es raro q envies un sms y t llegue a las 4 horas recien), de esta manera podes ir a solucionar personalmente el problema, o desde algun lado conectarte y habilitar la transferencia de archivos a algun netbackup, tbn, estoy viendo de habilitar una transferencia de emergencia a un hd usb de alivio de manera automatica, para ello se basaria en transferir los archivos fijandose en la antiguedad/ultimo acceso, cosa de transferir los q ultimamente nose accedieron, bueno el codigo seria el sgte:
#!/bin/bash
#uso: espacio.sh dispositivo (ej: espacio sda1)
#programa para monitorear espacio en disco, cuando supera cierto porcentaje de uso (150MB),
#envia un mail de advertencia y detiene algunos procesos relacionados con las descargas
#como pueden ser los torrents (reinicia apache simplemente)
#particion a comprobar espacio
disp=$1
#campos
# 1 2 3 4 5 6
# S.ficheros Tamaño Usado Disp Uso% Montado en
#deja el porcentaje de uso para comparar
salida=$(df -h | grep $disp)
space=$( echo $salida | fmt -u | cut -f 2 -d ' ') # tamano particion
used=$( echo $salida | fmt -u | cut -f 3 -d ' ' ) # espacio usado
left=$( echo $salida | fmt -u | cut -f 4 -d ' ' ) #espacio libre
left1=$( echo $left | sed -e 's/G/000000/g' | sed -e 's/M/000/g' )
porcentage=$( echo $salida | fmt -u | cut -f 5 -d ' ' | tr -d "%") #porcentual usado
montado=$( echo $salida | fmt -u | cut -f 6 -d ' ' ) #montado en...
dispositivo=$( echo $salida | fmt -u | cut -f 1 -d ' ' ) #particion
mensaje=""
if (( $left1>= 150000)); then
#aun queda espacio
mensaje="aun queda espacio en "$disp
else
#si no queda espacio
mensaje="actualmente usado en "$disp":"$porcentage"% de "$space" o sea poco espacio ("$(date)")"
/dirbin/sendEmail -t destino@gmail.com -u "animetower espacio insuficiente en disco" -m $mensaje -f from@host.no-ip.org -s smtp.gmail.com:587 -xu 'user@gmail.com' -xp pass -v -o tls=yes
/dirbin/sendEmail -t destino@sms.ctimovil.com.ar -u "animetower espacio insuficiente en disco" -m $mensaje -f from@host.no-ip.org -s smtp.gmail.com:587 -xu 'user@gmail.com' -xp pass -v -o tls=yes
fi
echo $mensaje
echo $left1
25 mayo 2008
Chequear espacio de disco y aviso a celular
Suscribirse a:
Entradas (Atom)