You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
1.1 KiB

  1. #!/bin/bash
  2. SHELL=/bin/bash
  3. PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
  4. ## check disk usage and send a notification if it's above 75% or 90%
  5. percent_usage=$(df /srv -h)
  6. percent_usage=${percent_usage##*$'\n'}
  7. percent_usage=${percent_usage% *}
  8. percent_usage=${percent_usage##* }
  9. percent_usage=${percent_usage%\%}
  10. LOCK_WORKING_DIR="/var/run/myc-manage"
  11. mkdir -p "$LOCK_WORKING_DIR"
  12. if [ "$percent_usage" -ge "90" ]; then
  13. if [ -e $LOCK_WORKING_DIR/disk_usage_90.lock ]; then
  14. exit 0
  15. else
  16. touch $LOCK_WORKING_DIR/disk_usage_90.lock
  17. message="[$(hostname)]: WARNING disk usage >=90%"
  18. send "$message"
  19. fi
  20. elif [ "$percent_usage" -ge "75" ]; then
  21. if [ -e $LOCK_WORKING_DIR/disk_usage_75.lock ]; then
  22. exit 0
  23. else
  24. touch $LOCK_WORKING_DIR/disk_usage_75.lock
  25. message="[$(hostname)]: WARNING disk usage >=75 <90%"
  26. send "$message"
  27. fi
  28. else
  29. if [ -e $LOCK_WORKING_DIR/disk_usage_75.lock ]; then
  30. rm $LOCK_WORKING_DIR/disk_usage_75.lock
  31. fi
  32. if [ -e $LOCK_WORKING_DIR/disk_usage_90.lock ]; then
  33. rm $LOCK_WORKING_DIR/disk_usage_90.lock
  34. fi
  35. fi