diff --git a/files/nrpe/check_uptime b/files/nrpe/check_uptime index 67ec8f2..d8f4d4f 100755 --- a/files/nrpe/check_uptime +++ b/files/nrpe/check_uptime @@ -12,15 +12,29 @@ crit=30 OVERRIDE_FILE="/var/lib/nagios/uptime_override" # Retrieve arguments -while getopts "w:c:f:" opt; do +RESET=0 +while getopts "w:c:f:r" opt; do case $opt in w) warn=$OPTARG ;; c) crit=$OPTARG ;; f) OVERRIDE_FILE=$OPTARG ;; # Permet de changer le chemin via Icinga - *) echo "Usage: $0 -w -c [-f ]"; exit $STATE_UNKNOWN ;; + r) RESET=1 ;; + *) echo "Usage: $0 [-w ] [-c ] [-f ] [-r]"; exit $STATE_UNKNOWN ;; esac done +# Option reset : crée le fichier d'override avec les bons droits +if [ "$RESET" -eq 1 ]; then + touch "$OVERRIDE_FILE" && chmod 640 "$OVERRIDE_FILE" && chown nagios:nagios "$OVERRIDE_FILE" + if [ $? -eq 0 ]; then + echo "OK - Override file created: $OVERRIDE_FILE" + exit $STATE_OK + else + echo "UNKNOWN - Failed to create override file: $OVERRIDE_FILE" + exit $STATE_UNKNOWN + fi +fi + # Extract uptime (in seconds) via /proc uptime_seconds=$(cat /proc/uptime | awk '{print $1}' | cut -d. -f1) uptime_min=$((uptime_seconds / 60))