Improve and standardize formatting

This commit is contained in:
Arszilla 2022-12-29 18:29:45 +02:00
parent 55f17996cd
commit 3d766a66a7
No known key found for this signature in database
5 changed files with 121 additions and 34 deletions

View File

@ -8,142 +8,161 @@
# rm mycron
# chmod +x /autofan.sh
#
PASSWORD="your password"
USERNAME="your username"
ILOIP="your ilo ip"
PASSWORD="YOUR_ILO_PASSWORD"
USERNAME="YOUR_ILO_USER"
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
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

View File

@ -9,54 +9,61 @@
# chmod +x /autofan.sh
#
PASSWORD="YOURILOPASSWORD"
USERNAME="YOURILOUSER"
ILOIP="YOURILOIP"
PASSWORD="YOUR_ILO_PASSWORD"
USERNAME="YOUR_ILO_USER"
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
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'
@ -68,20 +75,24 @@ elif [[ $T1 > 54 ]]
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"
@ -97,52 +108,66 @@ elif [[ $T2 > 58 ]]
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

View File

@ -1,4 +1,3 @@
#!/bin/bash
#
# crontab -l > mycron
@ -9,9 +8,11 @@
# rm mycron
# chmod +x /autofan.sh
#
PASSWORD="YOURILOPASSWORD"
USERNAME="YOURILOUSER"
ILOIP="YOURILOIP"
PASSWORD="YOUR_ILO_PASSWORD"
USERNAME="YOUR_ILO_USER"
ILOIP="YOUR_ILO_IP"
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)"
@ -24,6 +25,7 @@ if [[ $T1 > 67 ]]
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 255'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 255'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 255'
elif [[ $T1 > 58 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 39'
@ -35,20 +37,24 @@ elif [[ $T1 > 54 ]]
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 38'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 38'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 38'
elif [[ $T1 > 52 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 34'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 34'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 34'
elif [[ $T1 > 50 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 32'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 32'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 32'
else
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 30'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 30'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 30'
fi
echo "==============="
@ -61,28 +67,34 @@ if [[ $T2 > 67 ]]
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 255'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 255'
elif [[ $T2 > 58 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 39'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 39'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 39'
elif [[ $T2 > 54 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 38'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 38'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 38'
elif [[ $T2 > 52 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 34'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 34'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 34'
elif [[ $T2 > 50 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 32'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 32'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 32'
else
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 30'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 30'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 30'
fi

View File

@ -1,4 +1,3 @@
#!/bin/bash
#
# crontab -l > mycron
@ -9,9 +8,11 @@
# rm mycron
# chmod +x /autofan.sh
#
PASSWORD="your password"
USERNAME="your username"
ILOIP="your ilo ip"
PASSWORD="YOUR_ILO_PASSWORD"
USERNAME="YOUR_ILO_USER"
ILOIP="YOUR_ILO_IP"
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)"
@ -25,47 +26,55 @@ if [[ $T1 > 87 ]]
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 80'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 6 max 80'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 7 max 80'
elif [[ $T1 > 77 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 70'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 70'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 6 max 70'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 7 max 70'
elif [[ $T1 > 67 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 39'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 39'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 6 max 39'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 7 max 39'
elif [[ $T1 > 58 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 30'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 30'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 6 max 30'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 7 max 30'
elif [[ $T1 > 54 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 28'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 28'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 6 max 28'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 7 max 28'
elif [[ $T1 > 52 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 24'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 24'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 6 max 24'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 7 max 24'
elif [[ $T1 > 50 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 22'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 22'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 6 max 22'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 7 max 22'
else
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 4 max 20'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 5 max 20'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 6 max 20'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 7 max 20'
fi
echo "==============="
@ -78,45 +87,53 @@ if [[ $T2 > 87 ]]
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 80'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 80'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 80'
elif [[ $T2 > 77 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 70'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 70'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 70'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 70'
elif [[ $T2 > 67 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 39'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 39'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 39'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 39'
elif [[ $T2 > 58 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 30'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 30'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 30'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 30'
elif [[ $T2 > 54 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 28'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 28'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 28'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 28'
elif [[ $T2 > 52 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 24'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 24'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 24'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 24'
elif [[ $T2 > 50 ]]
then
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 22'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 22'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 22'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 22'
else
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 0 max 20'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 1 max 20'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 2 max 20'
sshpass -p $PASSWORD ssh $USERNAME@$ILOIP 'fan p 3 max 20'
fi

View File

@ -3,52 +3,64 @@
if [ $(id -u) -ne 0 ]; then
echo -e "\e[31mThis must be run as root!\e[0m"
exit 126
fi
echo "You are about to download and install the required items for HP ILO4 fan control."
read -rep "Do you accept? (y/N): " ACCEPTED
if [[ ${ACCEPTED,,} =~ ^[y] ]]; then
mkdir -p ~/autofan
cd ~/autofan
echo "Installing required packages..."
apt install sshpass wget lm-sensors jq -y
echo -e "\e[92mDownloading ILO_250 for ROM upgrade\e[0m"
wget -q https://github.com/That-Guy-Jack/HP-ILO-Fan-Control/tree/main/Files/ilo_250
echo -e "\e[92m Creating autofan service\e[0m"
wget -q https://raw.githubusercontent.com/That-Guy-Jack/HP-ILO-Fan-Control/main/Files/autofan.service
mv autofan.service /etc/systemd/system/
echo -e "\e[92m autofan service created\e[0m"
read -rep $'Which server are you running? (Enter 1-4)
1. DL360p G8 (No ESXi)
2. DL380p G8 (no ESXi)
3. DL360p G8 (ESXi-based)
4. DL380p G8 (ESXi-based)\n' HOSTCHOICE
case $HOSTCHOICE in
1)
AUTOFANFILE="autofan.sh"
HOSTTYPE="DL360p G8 (No ESXi)"
;;
2)
AUTOFANFILE="autofan-dl380p-g8.sh"
HOSTTYPE="DL380p G8 (No ESXi)"
;;
3)
AUTOFANFILE="autofan-dl360p-g8-EXSI.sh"
HOSTTYPE="DL360p G8 (ESXi-based)"
;;
4)
AUTOFANFILE="autofan-dl380p-g8-EXSI.sh"
HOSTTYPE="DL370p G8 (ESXi-based)"
;;
*)
echo -e "\e[31mInvalid choice. Exiting.\e[0m"
exit 1
;;
esac
echo "Preping autofan.sh for $HOSTTYPE"
echo "Downloading latest autofan.sh"
wget -q https://raw.githubusercontent.com/That-Guy-Jack/HP-ILO-Fan-Control/main/Files/$AUTOFANFILE -O autofan.sh
read -rep 'Enter iLO Username: ' ILOUSERNAME
read -rep 'Enter iLO Password: ' ILOPASSWORD
read -rep 'Enter iLO IP/hostname: ' ILOHOST
@ -59,7 +71,9 @@ if [[ ${ACCEPTED,,} =~ ^[y] ]]; then
echo -e "\e[92mDone! Please visit the GitHub page to follow the instructions!\e[0m"
echo -e "\e[1\https://github.com/That-Guy-Jack/HP-ILO-Fan-Control\e[0m"
else
echo -e "\e[31m:( exiting\e[0m"
exit 0
fi