403Webshell
Server IP : 198.38.94.67  /  Your IP : 216.73.217.142
Web Server : LiteSpeed
System : Linux d6054.dxb1.stableserver.net 5.14.0-570.25.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 9 04:57:09 EDT 2025 x86_64
User : azfilmst ( 1070)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /lib64/nagios/plugins/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib64/nagios/plugins//check_a2_disk.sh
#!/bin/bash
# Ref - 869830c19 - check_a2_vps_disk -a custom script to monitor VZ container storage
#

disk_checker() {
  diskc_warn=90
  diskc_crit=95
  for mount in $(cat /proc/mounts | grep -vE "cagefs|cgroup|binfmt|mqueue|dev/pts|run/user|/proc|/sys|virtfs|/run|tmpfs" | awk '{print $2}'); do
    df_storage=$(df -k ${mount} | tail -n +2)
    df_storage_mount=$(echo "${df_storage}" | awk '{print $NF}')
    df_storage_usep=$(echo "${df_storage}" | awk '{print $5}' | tr -d '%')
    df_storage_avail=$(echo "${df_storage}" | awk '{print $4 / 1024"MB"}')
    df_storage_used=$(echo "${df_storage}" | awk '{print $3}')
    df_storage_total=$(echo "${df_storage}" | awk '{print $2}')

    df_inodes=$(df -i ${mount} | tail -n +2)
    df_inodes_mount=$(echo "${df_inodes}" | awk '{print $NF}')
    df_inodes_usep=$(echo "${df_inodes}" | awk '{print $5}' | tr -d '%')
    df_inodes_avail=$(echo "${df_inodes}" | awk '{print $4}')
    df_inodes_used=$(echo "${df_inodes}" | awk '{print $3}')
    df_inodes_total=$(echo "${df_inodes}" | awk '{print $2}')

    if [[ "${df_storage_usep}" -gt "${diskc_warn}" ]] && [[ "${df_storage_usep}" -lt "${diskc_crit}" ]]; then
      echo "WARN: ${df_storage_mount} ${df_storage_usep}% ${df_storage_avail} (Inodes: ${df_inodes_total}/${df_inodes_used} - ${df_inodes_usep}%)"
    elif [[ "${df_storage_usep}" -lt "${diskc_warn}" ]]; then
      echo "OK: ${df_storage_mount} ${df_storage_usep}% ${df_storage_avail} (Inodes: ${df_inodes_total}/${df_inodes_used} - ${df_inodes_usep}%)"
    elif [[ "${df_storage_usep}" -gt "${diskc_crit}" ]]; then
      echo "CRIT: ${df_storage_mount} ${df_storage_usep}% ${df_storage_avail} (Inodes: ${df_inodes_total}/${df_inodes_used} - ${df_inodes_usep}%)"
    fi
  done
}

check_disk_data=$(disk_checker | sed ':a;N;$!ba;s/\n/; /g')
if echo "${check_disk_data}" | grep -q CRIT; then
  echo "DISK CRITICAL - free space: ${check_disk_data}"
  exit 2
elif echo "${check_disk_data}" | grep -q WARN; then
  echo "DISK WARN - free space: ${check_disk_data}"
  exit 1
else
  echo "DISK OK - free space: ${check_disk_data}"
  exit 0
fi

Youez - 2016 - github.com/yon3zu
LinuXploit