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?

  • Tiff@reddthat.com
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    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

  • TheTango@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    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