Monitores de temperatura e coolers

A partir da época do Pentium II, as placas-mãe passaram a vir com sensores de temperatura para o processador e, mais tarde, com sensores para o chipset e também monitores de rotação dos coolers.

Como os processadores dissipam cada vez mais calor, os sensores acabam sendo um recurso importante. Se o processador trabalha a uma temperatura alta mesmo nos dias frios, significa que provavelmente vai começar a travar nos dias mais quentes. Com o tempo os coolers acumulam sujeira, que com o tempo faz com que girem mais devagar, perdendo eficiência. Com os sensores você pode tomar conhecimento deste tipo de problema antes que seu micro comece a travar.

No Linux, o suporte aos sensores da placa-mãe é provido por dois projetos, o I2C e o LM-sensors. Até o Kernel 2.4 era necessário baixar os pacotes e compilá-los manualmente, mas, a partir do 2.6, eles foram incluídos oficialmente no Kernel, o que facilitou as coisas. Usando uma distribuição atual você já encontrará os módulos pré-instalados.

Os pacotes para distribuições antigas, baseadas no Kernel 2.4 ou anterior, podem ser baixados no:
http://secure.netroedge.com/~lm78/download.html.

Com os módulos disponíveis, falta apenas instalar o pacote “lm-sensors” que contém os utilitários de configuração e arquivos necessários. Ele inclui o script “sensors-detect“, que ajuda na configuração inicial, detectando os sensores presentes na placa-mãe e dizendo quais módulos devem ser carregados para habilitar o suporte:

# sensors-detect

Ele faz várias perguntas, e exibe vários textos explicativos. Você pode simplesmente ir aceitando os valores defaults, que fazem ele executar todos os testes.

Caso os sensores da sua placa-mãe sejam suportados, ele exibirá no final um relatório com os passos necessários para ativá-los, oferecendo a opção de fazer as alterações necessárias automaticamente:

To make the sensors modules behave correctly,
add these lines to /etc/modules:

#—-cut here—-
# I2C adapter drivers
i2c-nforce2
# I2C chip drivers
asb100
w83l785ts
eeprom

#—-cut here—-

Do you want to add these lines to /etc/modules
automatically? (yes/NO)

No meu caso, é preciso apenas carregar os módulos i2c-nforce2, asb100, w83l785ts e eeprom, o que pode ser feito manualmente, usando o comando “modprobe”, ou de forma definitiva, adicionado as linhas no final do arquivo “/etc/modules”, o que orienta o sistema a carregá-los durante o boot.

Outra opção é incluir os comandos que carregam os módulos no final do arquivo “/etc/rc.d/rc.local” ou “/etc/init.d/boomisc.sh” (no Debian e derivados), o que também fará com que os módulos sejam carregados no boot. Neste caso, as linhas a serem inseridas são:

modprobe i2c-nforce2
modprobe asb100
modprobe w83l785ts
modprobe eeprom

Você pode ver uma lista dos chips suportados por cada módulo no:
http://secure.netroedge.com/~lm78/supported.html.

Com os sensores habilitados, você pode ver um relatório com as informações disponíveis usando os comandos:

# sensors -s
$ sensors

O primeiro precisa ser executado como root e calibra os valores dos sensores usando uma série de parâmetros específicos para cada chipset. A partir daí, você pode usar o segundo comando como usuário, para verificar os valores já calibrados.

Não é muito prático ficar abrindo o terminal cada vez que quiser checar a temperatura. Você pode resolver isso instalando um monitor gráfico, como o Ksensors e o Gkrellm, instalados através dos pacotes de mesmo nome. O Ksensors é interessante para quem usa o KDE, pois permite usar um ícone com a temperatura ao lado do relógio, enquanto o Gkrellm tem seu público fiel graças ao bom design.

Em ambos os casos, você precisa ativar os sensores que serão exibidos na janela de configuração. No Ksensors existe a opção de exibir cada mostrador ao lado do relógio (Dock) ou na barra do programa (Panel).

Na configuração, existe uma opção para que o Ksensors seja aberto durante a inicialização do KDE. Mas, em versões antigas do programa, esta opção não funciona, fazendo com que você precise sempre inicializá-lo manualmente. Se for o caso, adicione manualmente uma entrada para ele dentro da pasta “/home/$USER/.kde/Autostart/”, onde ficam ícones de atalho para todos os programas que serão inicializados durante o boot.

Existem ainda vários tipos de scripts, painéis do Superkaramba e diversos pequenos programas que monitoram a temperatura e oferecem funções diversas. Estes scripts são fáceis de escrever, pois simplesmente utilizam as informações exibidas pelo comando “sensors”. Um exemplo é o pequeno script abaixo, que gera um arquivo chamado “/tmp/cpu” e o atualiza a cada dois segundos com a temperatura do processador. O texto deste arquivo poderia ser exibido numa barra do Superkaramba ou postado numa página web, por exemplo.

while [ 1 = 1 ]; do
sensors | grep ‘temp:’ | sed -r ‘s/ +/ /g’ | cut -d ” ” -f2 > /tmp/cpu
sleep 2
done

Em alguns casos, os sensores vêm de fábrica desativados, de forma que funcionam apenas em conjunto com o driver for Windows. Este é o caso de, por exemplo, algumas placas-mãe da Asus e alguns notebooks da Toshiba, como o A70 e A75. Nestes casos não existe uma forma simples de ativar os sensores no Linux.

Outra forma de acompanhar a temperatura (que funciona em muitos notebooks que não são compatíveis com o lm-sensors) é usar o comando “acpi -V“, que mostra informações sobre o status da bateria e também a temperatura do processador e placa-mãe, como em:

$ acpi -V

Battery 1: charged, 100%
Thermal 1: active[2], 62.0 degrees C
Thermal 2: ok, 49.0 degrees C
Thermal 3: ok, 31.0 degrees C
AC Adapter 1: on-line

Veja que neste caso o notebook tem três sensores de temperatura: para o processador, chipset da placa-mãe e HD.

Com relação à bateria, você pode encontrar algumas informações interessantes também dentro da pasta “/proc/acpi/battery/“. Dentro da pasta, você encontra subpastas para cada bateria disponível e, dentro de cada uma, o arquivo de texto “info”. Você pode listar todos de uma vez usando o comando:

$ cat /proc/acpi/battery/*/info

present: yes
design capacity: 3788 mAh
last full capacity: 3788 mAh

battery technology: rechargeable
design voltage: 10800 mV
design capacity warning: 190 mAh
design capacity low: 38 mAh
capacity granularity 1: 100 mAh
capacity granularity 2: 100 mAh
model number: Primary
serial number: 57353 2005/03/19
battery type: LIon
OEM info: Hewlett-Packard

Por aqui você sabe que o notebook usa uma bateria Li-Ion (do tipo que não tem problemas com o efeito memória) e que a bateria está em bom estado, já que na última carga ela atingiu a carga máxima. Quando a bateria começa a ficar viciada, a carga máxima atingida vai ficando cada vez mais abaixo da máxima, acompanhado por uma redução ainda maior na autonomia. Por estas informações você tem como verificar a saúde da bateria sem precisar ficar carregando e descarregando para cronometrar o tempo de autonomia.

Além de usar os sensores do ACPI, é possível acompanhar a temperatura do HD através do “hddtemp“. Ele é um pacote extremamente pequeno, que está disponível na maioria das distribuições. No Debian você pode instalar via apt-get:

# apt-get install hddtemp

Com ele instalado, use o comando “hddtemp” para checar a temperatura do HD desejado, como em:

$ hddtemp /dev/hda
/dev/hda: SAMSUNG SP1203N: 29°C

Muitos programas de monitoramento, como o Gkrellm e vários temas do Superkaramba, são capazes de acompanhar o relatório do hddtemp, exibindo a temperatura em tempo real.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X