diff --git a/defaults.inc b/defaults.inc index 3541e096..10b9dac2 100755 --- a/defaults.inc +++ b/defaults.inc @@ -1,5 +1,5 @@ #!/usr/bin/env bash -VERS='4.12.25-10082023' +VERS='4.12.26-10092023' noheader=' service status-check nightlyrephp7.3-fpm,new backup report check checkcerts gitea update-nodes copynpmcerts singleservercheck update-dyndns backup-offsitepfsense ' CERT_DAEMON='/snap/bin/certbot' diff --git a/nodemgmt-scripts.sh b/nodemgmt-scripts.sh index b97aff1c..abd648ca 100755 --- a/nodemgmt-scripts.sh +++ b/nodemgmt-scripts.sh @@ -884,53 +884,57 @@ GUI(){ DOWNLIST ${2} ;; status) - if [ -f "${NM_TMPFOLDER}/status-check.running" ] && [ $(expr `date +%s` - $(stat -c %Y ${NM_TMPFOLDER}/status-check.running)) -gt 1800 ]; then - # if [ -f "${NM_TMPFOLDER}/status-check.running" ]; then - SENDNOTICE "Nodemgmt Script Error" "Status monitoring stuck, system resetting... fix yo shit" - mv -f ${NM_TMPFOLDER}/status-check.running ${NM_TMPFOLDER}/status-check.running.crash - getStuckNM=$(pgrep -f '/nodemgmt') - for i in $getStuckNM; do - [ "$BASHPID" != "$i" ] && /bin/kill -9 $i - done - fi + if [ "${2}" == "freespace" ]; then + STATUS freespace + else + if [ -f "${NM_TMPFOLDER}/status-check.running" ] && [ $(expr `date +%s` - $(stat -c %Y ${NM_TMPFOLDER}/status-check.running)) -gt 1800 ]; then + # if [ -f "${NM_TMPFOLDER}/status-check.running" ]; then + SENDNOTICE "Nodemgmt Script Error" "Status monitoring stuck, system resetting... fix yo shit" + mv -f ${NM_TMPFOLDER}/status-check.running ${NM_TMPFOLDER}/status-check.running.crash + getStuckNM=$(pgrep -f '/nodemgmt') + for i in $getStuckNM; do + [ "$BASHPID" != "$i" ] && /bin/kill -9 $i + done + fi - if [ ! -f "${NM_TMPFOLDER}/status-check.running" ]; then - touch "${NM_TMPFOLDER}/status-check.running" - if [ "${2}" == "report" ]; then - # start_status=`date +%s` - echo "$(date) - LOCAL - ${NODE_HOSTNAME} - Starting Status Check" >> ${NM_LOGFILE} - echo -e "$(date) - Starting status check #############################\n" > ${NM_TMPFOLDER}/status-check.running - STATUS report ${3} >> ${NM_TMPFOLDER}/status-check.running - echo -e "\n\n$(date) - Finished status check #############################\n" >> ${NM_TMPFOLDER}/status-check.running - echo "$(date) - LOCAL - ${NODE_HOSTNAME} - Completed Status Check" >> ${NM_LOGFILE} + if [ ! -f "${NM_TMPFOLDER}/status-check.running" ]; then + touch "${NM_TMPFOLDER}/status-check.running" + if [ "${2}" == "report" ]; then + # start_status=`date +%s` + echo "$(date) - LOCAL - ${NODE_HOSTNAME} - Starting Status Check" >> ${NM_LOGFILE} + echo -e "$(date) - Starting status check #############################\n" > ${NM_TMPFOLDER}/status-check.running + STATUS report ${3} >> ${NM_TMPFOLDER}/status-check.running + echo -e "\n\n$(date) - Finished status check #############################\n" >> ${NM_TMPFOLDER}/status-check.running + echo "$(date) - LOCAL - ${NODE_HOSTNAME} - Completed Status Check" >> ${NM_LOGFILE} - rm -f ${NM_LOGFOLDER}/status-check.lastrun - mv ${NM_TMPFOLDER}/status-check.running ${NM_LOGFOLDER}/status-check.lastrun + rm -f ${NM_LOGFOLDER}/status-check.lastrun + mv ${NM_TMPFOLDER}/status-check.running ${NM_LOGFOLDER}/status-check.lastrun - # end_status=`date +%s` - # runtime_status=$((end_status-start_status)) - # echo -e "\nRuntime: ${runtime_status}" >> ${NM_LOGFOLDER}/status-check.lastrun + # end_status=`date +%s` + # runtime_status=$((end_status-start_status)) + # echo -e "\nRuntime: ${runtime_status}" >> ${NM_LOGFOLDER}/status-check.lastrun - if [ "${3}" == "email" ]; then - echo -e "\n\n" >> ${NM_LOGFOLDER}/status-check.lastrun - DOWNLIST report >> ${NM_LOGFOLDER}/status-check.lastrun - STATUSLOG="$(cat ${NM_LOGFOLDER}/status-check.lastrun)" - SENDNOTICE "Status Report" "Status Report\n${STATUSLOG}" + if [ "${3}" == "email" ]; then + echo -e "\n\n" >> ${NM_LOGFOLDER}/status-check.lastrun + DOWNLIST report >> ${NM_LOGFOLDER}/status-check.lastrun + STATUSLOG="$(cat ${NM_LOGFOLDER}/status-check.lastrun)" + SENDNOTICE "Status Report" "Status Report\n${STATUSLOG}" + fi + else + STATUS ${2} ${3} + rm -f ${NM_TMPFOLDER}/status-check.running fi else - STATUS ${2} ${3} - rm -f ${NM_TMPFOLDER}/status-check.running + # echo -e "${idsCL[LightYellow]}Status check already running, please wait and try again${idsCL[Default]}" + echo -e "${idsCL[LightYellow]}Status checks are already running${idsCL[Default]}" + echo -en "${idsCL[LightCyan]}View the (L)ive log, or the (P)revious run log instead? ${idsCL[Default]}" + read -n1 choice + case $choice in + [Ll]) watch -n1 tail -n35 ${NM_TMPFOLDER}/status-check.running; echo;; + [Pp]) echo; cat ${NM_LOGFOLDER}/status-check.lastrun;; + esac + echo fi - else - # echo -e "${idsCL[LightYellow]}Status check already running, please wait and try again${idsCL[Default]}" - echo -e "${idsCL[LightYellow]}Status checks are already running${idsCL[Default]}" - echo -en "${idsCL[LightCyan]}View the (L)ive log, or the (P)revious run log instead? ${idsCL[Default]}" - read -n1 choice - case $choice in - [Ll]) watch -n1 tail -n35 ${NM_TMPFOLDER}/status-check.running; echo;; - [Pp]) echo; cat ${NM_LOGFOLDER}/status-check.lastrun;; - esac - echo fi;; checkdocker) CHECK_DOCKER_SERVICES ${2};; set-permissions) SET-PERMISSIONS ${2};;