diff --git a/defaults.inc b/defaults.inc index 5c914a6d..74635933 100755 --- a/defaults.inc +++ b/defaults.inc @@ -1,6 +1,6 @@ #!/usr/bin/env bash -VERS='2.5.198-01292024' +VERS='2.5.199-01302024' noheader=' update service dailytemp confsync -r -report ' diff --git a/inc/temp.inc.sh b/inc/temp.inc.sh index 113f6132..996a9f05 100644 --- a/inc/temp.inc.sh +++ b/inc/temp.inc.sh @@ -614,7 +614,8 @@ CHECKTEMP_SERVICE_RUNSENSOR(){ # fi elif (( $(bc <<< "${temp_f} >= ${DEFAULT_ESXI_EXHAUST_MIN}") )); then - [ ! -f ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set ] && NEW_FanSpeed=$(expr ${DEFAULT_ESXI_FANSPEED} + 5) || NEW_FanSpeed=$(expr $(cat ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set) + 5) + (( $(bc <<< "${temp_f} >= $(expr ${DEFAULT_ESXI_EXHAUST_MIN} + 5)") )) && FAN_INCREASE=10 || FAN_INCREASE=5 + [ ! -f ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set ] && NEW_FanSpeed=$(expr ${DEFAULT_ESXI_FANSPEED} + ${FAN_INCREASE}) || NEW_FanSpeed=$(expr $(cat ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set) + ${FAN_INCREASE}) if [ ${NEW_FanSpeed} -le 104 ]; then [ ${NEW_FanSpeed} -gt 100 ] && NEW_FanSpeed=100 if [ ${NEW_FanSpeed} -ge ${DEFAULT_ESXI_FANSPEED} ] && [ ${NEW_FanSpeed} -le 100 ]; then @@ -625,7 +626,8 @@ CHECKTEMP_SERVICE_RUNSENSOR(){ [ -f ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.gl ] && rm -f ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.gl else - NEW_FanSpeed=$(expr ${FanSpeed} - 5) + (( $(bc <<< "${temp_f} <= $(expr ${DEFAULT_ESXI_EXHAUST_MIN} - 5)") )) && FAN_DECREASE=10 || FAN_DECREASE=5 + [ ! -f ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set ] && NEW_FanSpeed=$(expr ${DEFAULT_ESXI_FANSPEED}) || NEW_FanSpeed=$(expr $(cat ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set) - ${FAN_DECREASE}) if [ ${NEW_FanSpeed} -ge $(expr ${DEFAULT_ESXI_FANSPEED} - 4) ] && [ ${FanSpeed} -ne ${DEFAULT_ESXI_FANSPEED} ]; then [ ${NEW_FanSpeed} -lt ${DEFAULT_ESXI_FANSPEED} ] && NEW_FanSpeed=${DEFAULT_ESXI_FANSPEED} if [ ${NEW_FanSpeed} -ge ${DEFAULT_ESXI_FANSPEED} ] && [ ${NEW_FanSpeed} -le 100 ]; then @@ -818,6 +820,7 @@ Previous Temp: ${last_temp}${GAUGESH}" touch ${PW_TMPFOLDER}/${SENSORa}-error.sent SENDNOTICE "${SENSORa} Sensor ERROR" "ERROR reading sensor data" 1 echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${SENSORa} Sensor - ERROR reading sensor data" >> ${logtemp} + [ "${PW_SENSOR_TYPE[${SENSORa}]}" == "esxi" ] && [ -f ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set ] && rm -f ${PW_TMPFOLDER}/.lastfancheck/${SENSORa}.set fi fi rm -f ${PW_TMPFOLDER}/ztemprun.${SENSORa}.running @@ -829,7 +832,6 @@ SET_ESXI_FANSPEED(){ SET_HOST=${2} ipmitool -I lanplus -H ${PW_HOST_IDRACS[${SET_HOST}]} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" raw 0x30 0x30 0x01 0x00 >/dev/null 2>&1 ipmitool -I lanplus -H ${PW_HOST_IDRACS[${SET_HOST}]} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" raw 0x30 0x30 0x02 0xff 0x$(printf "%X" "${SET_FanSpeed}") >/dev/null 2>&1 - if [ "${SET_FanSpeed}" == "${DEFAULT_ESXI_FANSPEED}" ]; then MSG="Setting Fans back to defaults: ${SET_FanSpeed}%" elif (( $(bc <<< "${SET_FanSpeed} < $(cat ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set)") )); then @@ -837,8 +839,10 @@ SET_ESXI_FANSPEED(){ else MSG="Increasing fans to ${SET_FanSpeed}%" fi + [ ! -f ${PW_LOGFOLDER}./esxi-fanspeeds.log ] && touch ${PW_LOGFOLDER}./esxi-fanspeeds.log [ "${logtemp}" != "" ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${FanSpeed}% - ${SET_HOST} - ${MSG}" >> ${logtemp} [ ${FanSpeed} -ge 70 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${FanSpeed}% - ${SET_HOST} - ${MSG}" >> ${PW_LOGFILE} + echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${FanSpeed}% - ${SET_HOST} - ${MSG}" >> ${PW_LOGFOLDER}./esxi-fanspeeds.log echo "${SET_FanSpeed}" >| ${PW_TMPFOLDER}/.lastfancheck/${SET_HOST}.set [ "${SET_HOST}" == "iDS-vMS-Host7" ] && SET_ESXI_FANSPEED ${SET_FanSpeed} iDS-vMS-Host6 >/dev/null 2>&1 & }