Got some extreme warm weather coming and I’m going to be out of town for a while. Can’t trust the inlaws staying here to do anything server related.
Anyone know of a plugin or script to automatically shutdown if the system temp is too high?
I know it’s possible to get the system temperature from
sensors
. Which gets the info from/sys/class/thermal
You could probably write a wrapper around the temperature from there and when it gets to 100? Perform a shutdown
There are a few ways to do it, but the easiest is to run the ‘sensors’ command from the lm_sensors package, but I prefer the simplicity of the acpi command
For example,
[fedora ~]$ acpi -t Thermal 0: ok, 20.0 degrees C
So you could do:
#!/usr/bin/bash if [ $(acpi -t | cut -d" " -f4 | cut -d"." -f1) -gt 80 ]; then # halt? shutdown? reboot? It's up to you. fi
The second way is to use your BIOS settings to see if you can adjust the trip temperature. On my system,
[fedora ~]# sensors
<snip> acpitz-acpi-0 Adapter: ACPI interface temp1: +20.0°C (crit = +110.0°C) <snip>
which means the system will auto-shutdown at 110.0 degrees.
You can see that this happens at https://elixir.bootlin.com/linux/latest/source/drivers/thermal/thermal_core.c#L316