Advertisement
sergio_educacionit

disk-usage-warning.sh

Dec 16th, 2024 (edited)
43
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.31 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3.  
  4. # Niveles de alarma (% de uso)
  5. #
  6. # war: mayor a 50 pero menor a 70
  7. # crit: mayor a 70 menor a 95
  8. # err: mayor a 95
  9.  
  10. # Uso del script
  11. #
  12. # ./disk-usage-warning.sh /dev/sdX
  13. #
  14.  
  15. disk=$1
  16.  
  17. err_warn="[WARNING] El dipositivo $disk esta alcanzando el 70% de uso."
  18. err_crit="[CRITICAL] El dipositivo $disk esta alcanzando el 95% de uso."
  19. err_err="[ERROR] El dipositivo $disk esta alcanzando el %100 de uso."
  20. err_info="[INF] El dipositivo $disk esta al:"
  21.  
  22.  
  23. # el signo '!' invierte el sentido de la expresion, si devuelve Verdadero se
  24. # interpreta como Falso, si devuelve Falso se interpreta como Verdadero.
  25. #
  26. # En este caso queremos que se ejecuten los comandos de la expresion si
  27. # '$disk' NO es un archivo especial de bloque.
  28.  
  29. if [ -b $disk ];then
  30.    
  31.     disk_size=$(df $disk -h | grep '/dev/sda1' | tr -s ' ' | cut -d ' ' -f 2)
  32.     disk_perc=$(df -h $disk | grep '/dev/sda1' | tr -s ' ' | cut -d ' ' -f 5 | sed 's/%//')
  33.  
  34. else
  35.  
  36.     echo "$disk no es un dipositivo de bloque"
  37.     exit 1
  38.  
  39. fi
  40.  
  41.  
  42. disk_perc=95
  43.  
  44.  
  45. # mayor a 50 y menor que 70
  46.  
  47. if [ $disk_perc -ge 50 ] &&  [ $disk_perc -lt 70 ]; then
  48.  
  49.     echo $err_warn
  50.  
  51. elif [ $disk_perc -ge 70 ] &&  [ $disk_perc -lt 95 ]; then
  52.      
  53.     echo $err_crit
  54.  
  55. elif [ $disk_perc -ge 95 ];then
  56.  
  57.     echo $err_err
  58.  
  59. else
  60.  
  61.     echo $err_info ${disk_perc}%
  62.  
  63. fi
  64.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement