From 2b3b5a16072a623b560e034300bd228600c28f07 Mon Sep 17 00:00:00 2001 From: Jack Date: Tue, 3 May 2022 09:56:47 +0100 Subject: [PATCH] Added EXSI Support Merged altered Scripts from PR8, added instructions from thomaswilbur's fork Co-Authored-By: Thomas Wilbur --- Files/autofan-dl360p-g8-EXSI.sh | 149 ++++++++++++++++++++++++++++++++ Files/autofan-dl380p-g8-EXSI.sh | 148 +++++++++++++++++++++++++++++++ Files/sshpass | Bin 0 -> 15736 bytes Install.sh | 36 +++++++- README-EXSI.md | 27 ++++++ README.md | 6 +- 6 files changed, 361 insertions(+), 5 deletions(-) create mode 100644 Files/autofan-dl360p-g8-EXSI.sh create mode 100644 Files/autofan-dl380p-g8-EXSI.sh create mode 100644 Files/sshpass create mode 100644 README-EXSI.md diff --git a/Files/autofan-dl360p-g8-EXSI.sh b/Files/autofan-dl360p-g8-EXSI.sh new file mode 100644 index 0000000..778881f --- /dev/null +++ b/Files/autofan-dl360p-g8-EXSI.sh @@ -0,0 +1,149 @@ +#!/bin/bash +# 1U +# crontab -l > mycron +# echo "#" >> mycron +# echo "# At every 2nd minute" >> mycron +# echo "*/1 * * * * /bin/bash /autofan.sh >> /tmp/cron.log" >> mycron +# crontab mycron +# rm mycron +# chmod +x /autofan.sh +# +PASSWORD="your password" +USERNAME="your username" +ILOIP="your ilo ip" + +FILE="/usr/bin/sshpass" +if [ -f "$FILE" ]; then + echo "sshpass already loaded." +else +esxcli network firewall ruleset set -e true -r httpClient +pwdlocation=$(pwd) +cd /tmp +wget https://github.com/thomaswilbur/HP-ILO-Fan-Control/blob/main/Files/sshpass?raw=true --no-check-certificate +mv sshpass?raw=true /usr/bin/sshpass +chmod +x sshpass +cd pwdlocation + echo "sshpass loaded." +fi + +esxcli network firewall ruleset set -e true -r sshClient +#T1="$(sensors -Aj coretemp-isa-0000 | jq '.[][] | to_entries[] | select(.key | endswith("input")) | .value' | sort -rn | head -n1)" +#T2="$(sensors -Aj coretemp-isa-0001 | jq '.[][] | to_entries[] | select(.key | endswith("input")) | .value' | sort -rn | head -n1)" +sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP show /system1/sensor2 > temp.txt +T1CLEAN=$(grep -Ihr "CurrentReading" temp.txt) +T1=$(echo "${T1CLEAN/ CurrentReading=/}" | xargs) +rm -rf temp.txt +sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP show /system1/sensor3 > temp.txt +T2CLEAN=$(grep -Ihr "CurrentReading" temp.txt) +T2=$(echo "${T2CLEAN/ CurrentReading=/}" | xargs) +rm -rf temp.txt +T1=${T1//$'\n'/} +T2=${T2//$'\n'/} +T1=${T1%$'\n'} +T2=${T2%$'\n'} + + +echo "CPU 1 Temp $T1 C" + + +if [[ $T1 > 87 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 80' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 80' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 6 max 80' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 7 max 80' +elif [[ $T1 > 77 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 70' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 70' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 6 max 70' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 7 max 70' +elif [[ $T1 > 67 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 39' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 39' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 6 max 39' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 7 max 39' +elif [[ $T1 > 58 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 30' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 30' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 6 max 30' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 7 max 30' +elif [[ $T1 > 54 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 28' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 28' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 6 max 28' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 7 max 28' +elif [[ $T1 > 52 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 24' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 24' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 6 max 24' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 7 max 24' +elif [[ $T1 > 50 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 22' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 22' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 6 max 22' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 7 max 22' + else + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 20' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 20' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 6 max 20' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 7 max 20' +fi + + +echo "CPU 2 Temp $T2 C" + + +if [[ $T2 > 87 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 80' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 80' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 80' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 80' +elif [[ $T2 > 77 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 70' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 70' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 70' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 70' +elif [[ $T1 > 67 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 39' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 39' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 39' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 39' +elif [[ $T2 > 58 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 30' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 30' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 30' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 30' +elif [[ $T2 > 54 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 28' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 28' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 28' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 28' +elif [[ $T2 > 52 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 24' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 24' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 24' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 24' +elif [[ $T2 > 50 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 22' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 22' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 22' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 22' + else + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 20' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 20' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 20' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 20' +fi diff --git a/Files/autofan-dl380p-g8-EXSI.sh b/Files/autofan-dl380p-g8-EXSI.sh new file mode 100644 index 0000000..ef9619c --- /dev/null +++ b/Files/autofan-dl380p-g8-EXSI.sh @@ -0,0 +1,148 @@ +#!/bin/bash +# +# crontab -l > mycron +# echo "#" >> mycron +# echo "# At every 2nd minute" >> mycron +# echo "*/1 * * * * /bin/bash /autofan.sh >> /tmp/cron.log" >> mycron +# crontab mycron +# rm mycron +# chmod +x /autofan.sh +# + +PASSWORD="YOURILOPASSWORD" +USERNAME="YOURILOUSER" +ILOIP="YOURILOIP" + +FILE="/usr/bin/sshpass" +if [ -f "$FILE" ]; then + echo "sshpass already loaded." +else +esxcli network firewall ruleset set -e true -r httpClient +pwdlocation=$(pwd) +cd /tmp +wget https://github.com/thomaswilbur/HP-ILO-Fan-Control/blob/main/Files/sshpass?raw=true --no-check-certificate +mv sshpass?raw=true /usr/bin/sshpass +chmod +x sshpass +cd pwdlocation + echo "sshpass loaded." +fi + +esxcli network firewall ruleset set -e true -r sshClient +#T1="$(sensors -Aj coretemp-isa-0000 | jq '.[][] | to_entries[] | select(.key | endswith("input")) | .value' | sort -rn | head -n1)" +#T2="$(sensors -Aj coretemp-isa-0001 | jq '.[][] | to_entries[] | select(.key | endswith("input")) | .value' | sort -rn | head -n1)" +sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP show /system1/sensor2 > temp.txt +T1CLEAN=$(grep -Ihr "CurrentReading" temp.txt) +T1=$(echo "${T1CLEAN/ CurrentReading=/}" | xargs) +rm -rf temp.txt +sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP show /system1/sensor3 > temp.txt +T2CLEAN=$(grep -Ihr "CurrentReading" temp.txt) +T2=$(echo "${T2CLEAN/ CurrentReading=/}" | xargs) +rm -rf temp.txt +sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP show /system1/sensor25 > temp.txt +T2CLEAN=$(grep -Ihr "CurrentReading" temp.txt) +RAID=$(echo "${T2CLEAN/ CurrentReading=/}" | xargs) +rm -rf temp.txt +T1=${T1//$'\n'/} +T2=${T2//$'\n'/} +RAID=${RAID//$'\n'/} +T1=${T1%$'\n'} +T2=${T2%$'\n'} +RAID=${RAID%$'\n'} + +echo "CPU 1 Temp $T1 C" + + +if [[ $T1 > 67 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 255' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 255' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 255' +elif [[ $T1 > 58 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 39' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 39' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 39' + +elif [[ $T1 > 54 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 38' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 38' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 38' +elif [[ $T1 > 52 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 34' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 34' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 34' +elif [[ $T1 > 50 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 32' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 32' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 32' +else + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 3 max 30' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 4 max 30' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 30' +fi + +echo "CPU 2 Temp $T2 C" + +if [[ $T2 > 67 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 255' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 255' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 255' + +elif [[ $T2 > 58 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 39' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 39' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 39' +elif [[ $T2 > 54 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 38' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 38' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 38' +elif [[ $T2 > 52 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 34' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 34' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 34' +elif [[ $T2 > 50 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 32' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 32' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 32' +else + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 0 max 30' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 1 max 30' + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 2 max 30' +fi + +echo "RAID Temp $RAID C" +if [[ $RAID > 97 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 255' +elif [[ $RAID > 95 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 90' +elif [[ $RAID > 94 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 85' +elif [[ $RAID > 93 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 60' +elif [[ $RAID > 92 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 55' +elif [[ $RAID > 91 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 50' +elif [[ $RAID > 90 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 45' +elif [[ $RAID > 89 ]] + then + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 40' +else + sshpass -p $PASSWORD ssh -oStrictHostKeyChecking=no -oKexAlgorithms=+diffie-hellman-group14-sha1 $USERNAME@$ILOIP 'fan p 5 max 35' +fi diff --git a/Files/sshpass b/Files/sshpass new file mode 100644 index 0000000000000000000000000000000000000000..558631d995fdec4da54b9375824ab71ad936b354 GIT binary patch literal 15736 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 literal 0 HcmV?d00001 diff --git a/Install.sh b/Install.sh index e14c648..58c9271 100644 --- a/Install.sh +++ b/Install.sh @@ -17,6 +17,36 @@ if [ $input = yes ] ; then cd /etc/systemd/system/ wget https://raw.githubusercontent.com/That-Guy-Jack/HP-ILO-Fan-Control/main/Files/autofan.service echo "Finished making autofan.service" + echo "Is Your host based on EXSI? (uses ILO temps over lm-sensors) [Y]/[N]" + read exsi + if [ $exsi = Y ] + echo "Which server are you running? DL360p G8 (1) or DL380p G8 (2) [1] or [2] :" + read server + if [ $server = 1 ] ; then + echo "Preping autofan.sh for DL360p G8" + cd / + echo "Downloading latest autofan.sh" + wget https://raw.githubusercontent.com/That-Guy-Jack/HP-ILO-Fan-Control/main/Files/autofan-dl360p-g8-EXSI.sh + echo "Downloaded autofan.sh, please change the placeholders with correct info" + echo "Please cisit the GitHub page to follow the instructions!" + echo "https://github.com/That-Guy-Jack/HP-ILO-Fan-Control" + exit 1 + elif [ $server = 2 ] ; then + echo "Preping autofan.sh for DL380p G8" + cd / + echo "Downloading latest autofan.sh for DL380p G8" + wget https://raw.githubusercontent.com/That-Guy-Jack/HP-ILO-Fan-Control/main/Files/autofan-dl380p-g8-EXSI.sh + echo "Renaming file" + mv autofan-dl380p-g8.sh autofan.sh + echo "Downloaded autofan.sh, please change the placeholders with correct info" + echo "Please cisit the GitHub page to follow the instructions!" + echo "https://github.com/That-Guy-Jack/HP-ILO-Fan-Control" + exit 1 + fi + else + echo " :( exitting" + exit 1 + else echo "Which server are you running? DL360p G8 (1) or DL380p G8 (2) [1] or [2] :" read server if [ $server = 1 ] ; then @@ -40,7 +70,7 @@ if [ $input = yes ] ; then echo "https://github.com/That-Guy-Jack/HP-ILO-Fan-Control" exit 1 fi -else - echo " :( exitting" - exit 1 + else + echo " :( exitting" + exit 1 fi diff --git a/README-EXSI.md b/README-EXSI.md new file mode 100644 index 0000000..f444f57 --- /dev/null +++ b/README-EXSI.md @@ -0,0 +1,27 @@ +# Originaly From + +https://github.com/thomaswilbur/HP-ILO-Fan-Control + +# HP ILO FAN CONTROL ESXI EDITION +TESTED ESXI 7 WITH THIS MOD +Uses a Custom ROM for The Hp ILO adapter + +### Reddit Post + +https://www.reddit.com/r/homelab/comments/hix44v/silence_of_the_fans_pt_2_hp_ilo_4_273_now_with/ + +### Original Repo + +https://github.com/That-Guy-Jack/HP-ILO-Fan-Control + + +### Steps + +1. Create Ubuntu ISO +2. Ensure ILO Security is Disabled via dipswitch on mobo +3. Flash new ILO +4. Write ILO creds down & ensure ssh is enabled +5. Reboot into ESXI +6. Run both of these commands +```esxcli network firewall ruleset set -e true -r httpClient``` +```esxcli network firewall ruleset set -e true -r sshClient``` diff --git a/README.md b/README.md index 74e23fb..28dfa6a 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ This repo contains all of the required files! :) All you need to run is the commands below. ### Currently, the scripts are only for Linux! -ESXi Support is in the works! + ~~ESXi Support is in the works!~~ Thanks to @thomaswilbur For making the ESXI verstion of the script! - see EXSI readme ## STEPS: @@ -17,7 +17,9 @@ ESXi Support is in the works! 3. Run the `prep.sh` in the `ilo_250` folder. If this errors it may be beacuse the ILO isnt it maintainance mode. (You may need to run this script as root.) > - ./flash_ilo4 --direct (When flashing the fans spin up to 100%, so be prepared) + ./flash_ilo4 --direct + +(When flashing the fans spin up to 100%, so be prepared) 4. Once the flash has completed, shut down your system and unplug it. Make sure to switch ILO back out of maintainance mode.