Como desativar o desligamento térmico

1

Não é que eu queira desativar totalmente a proteção térmica, mas em vez de desligar a máquina instantaneamente, como posso fazer meu Ubuntu 12.04 dormir ou hibernar? Como programador, meu IDE e meu projeto são interrompidos quando estão fechados incorretamente.

Existe uma solução para hibernar ou dormir quando o pico térmico é atingido?

Atualização:

O laptop não tem desligamento térmico em horários aleatórios, ele é desligado quando estou compilando (aplicativo Java), quando o uso da CPU está no máximo, quando apenas navega na internet sem problemas, então o problema é com o hardware. Isso não acontece toda hora, eu só quero que quando isso acontecer, ele apenas hiberne ou durma.

    
por xybrek 18.02.2014 / 09:02

1 resposta

1

Depois de muito tempo, tenho a resposta:

#!/bin/bash

# PURPOSE: Script to check temperature of CPU cores and report/shutdown if specified temperatures exceeded
#
# AUTHOR: feedback[AT]HaveTheKnowHow[DOT]com

# Expects two arguments:
# 1. Warning temperature
# 2. Critical shutdown temperature
# eg. using ./CPUTempShutdown.sh 30 40
# will warn when temperature of one or more cores hit 30degrees and shutdown when either hits 40degrees.

# NOTES:
# Change the strings ">>/home/xybrek" as required
# Substitute string "[email protected]" with your own email address in the string which starts "/usr/sbin/ssmtp [email protected]"

# Assumes output from sensors command is as follows:
#
# coretemp-isa-0000
# Adapter: ISA adapter
# Core 0: +35.0 C (high = +78.0 C, crit = +100.0 C) 
#
# coretemp-isa-0001
# Adapter: ISA adapter
# Core 1: +35.0 C (high = +78.0 C, crit = +100.0 C) 
#
# if not then modify the commands str=$(sensors | grep "Core $i:") & newstr=${str:14:2} below accordingly

echo "JOB RUN AT $(date)"
echo "======================================="

echo ''
echo 'CPU Warning Limit set to => '
echo 'CPU Shutdown Limit set to => '
echo ''
echo ''

sensors

echo ''
echo ''
stop=0
while true;
do
sleep 1.5
for i in 0 1
do
str=$(sensors | grep "Core $i:")
newstr=${str:17:2}

if [[ ${newstr} -ge  ]]
then
echo '============================' >>/home/xybrek/Desktop/CPUWarning.Log
echo $(date) >>/home/xybrek/Desktop/CPUWarning.Log
echo '' >>/home/xybrek/Desktop/CPUWarning.Log
echo ' WARNING: TEMPERATURE CORE' $i 'EXCEEDED'  '=>' $newstr >>/home/xybrek/Desktop/CPUWarning.Log
echo '' >>/home/xybrek/Desktop/CPUWarning.Log
echo '============================' >>/home/xybrek/Desktop/CPUWarning.Log
fi

if [[ ${newstr} -ge  ]]
then
echo '============================'
echo ''
echo 'CRITICAL: TEMPERATURE CORE' $i 'EXCEEDED'  '=>' $newstr
echo ''
echo '============================'
sudo pm-suspend
echo 'Sleeping....'
#exit
else
echo ' Temperature Core '$i' OK at =>' $newstr
echo ''
fi
done
done

echo 'Both CPU Cores are within limits'
echo ''
    
por xybrek 02.04.2014 / 19:42