Configurar aviso da temperatura da CPU no Conky

Publicado por Buckminster em 31/12/2025

[ Hits: 121 ]

 


Configurar aviso da temperatura da CPU no Conky



No Conky não é aconselhado utilizar:

${hwmon 0 temp 1}
${hwmon 0 temp 3}

O hwmon pode não ser a CPU.

A CPU costuma aparecer na saída do comando sensors: coretemp, k10temp, zenpower ou outro driver.

Exemplo:

$ sensors

pch_skylake-virtual-0
Adapter: Virtual device
temp1: +39.5°C

coretemp-isa-0000
Adapter: ISA adapter
Package id 0: +38.0°C (high = +80.0°C, crit = +100.0°C)
Core 0: +37.0°C (high = +80.0°C, crit = +100.0°C)
Core 1: +37.0°C (high = +80.0°C, crit = +100.0°C)
Core 2: +38.0°C (high = +80.0°C, crit = +100.0°C)
Core 3: +36.0°C (high = +80.0°C, crit = +100.0°C)


Caso não tiver, instale o pacote:

$ sudo apt install lm-sensors #ou dnf, pacman, zypper, etc

Caso colocar hwmon 0 e/ou hwmon 1 o Conky não consegue identificar onde está a temperatura da CPU.

Para ver os hwmon:

$ ls /sys/class/hwmon/

hwmon0 hwmon1

Para qual é a CPU, veja na saída de:

$ cat /sys/class/hwmon/hwmon0/name

$ cat /sys/class/hwmon/hwmon1/name

A saída pode ser coretemp, pch_skylake, k10temp, etc, depende do fabricante.

Por exemplo, aqui:

$ cat /sys/class/hwmon/hwmon0/name

pch_skylake

$ cat /sys/class/hwmon/hwmon1/name

coretemp

As saídas acima indicam que pch_skylake é o chipset da placa-mãe e coretemp é a CPU. Compare a saída do comando sensors com as saídas dos comandos cat, o que bater com a saída do comando sensors é a CPU; ou pesquise na internet pelo nome.

A temperatura real da CPU está na saída do comando sensors:
coretemp-isa-0000
Adapter: ISA adapter
Core 0: +46.0°C (high = +105.0°C, crit = +105.0°C)
Core 1: +46.0°C (high = +105.0°C, crit = +105.0°C)


Exemplo funcional do Conky:

${color white}Temperatures:
${color white}Core 0:$color ${hwmon coretemp temp 2}°C
${color white}Core 1:$color ${hwmon coretemp temp 3}°C

Em temp deve ficar temp 2 e temp 3, mas confirme com:

$ cat /sys/class/hwmon/hwmon1/temp*_label

Por exemplo, aqui:

$ cat /sys/class/hwmon/hwmon1/temp*_label

Package id 0
Core 0
Core 1
Core 2
Core 3


temp1 é CPU Package id 0
temp2 é Core 0
temp3 é Core 1
etc...

Use sempre hwmon pelo nome (coretemp, k10temp, etc). Não use hwmon 0, hwmon 1, etc.

Bônus

Mostrar alerta piscando quando a temperatura do SD/HD for maior do que 50°:

${if_match ${execi 60 hddtemp /dev/sda | awk '{print $NF}' | sed 's/[^0-9]//g'} > 50}\
${if_match ${updates} % 2 == 0}${color red}${else}${color yellow}${endif}\
WARNING - HDD TEMPERATURE IS TOO HIGH\
${color}\
${endif}

Alerta da CPU piscando quando a temperatura estiver maior do que 75°C:

${if_match ${execi 5 sensors | awk '/Package id 0/ {print $4}' | sed 's/[+°C]//g'} > 75}\
${if_match ${updates} % 2 == 0}${color red}${else}${color yellow}${endif}\
CUIDADO - A CPU ESTÁ DERRETENDO!!!\
${color}\
${endif}

Em awk '/Package id 0/

Coloque a saída do comando sensors logo após a linha Adapter, por exemplo:
Adapter: ISA adapter
Core 0: +46.0°C (high = +105.0°C, crit = +105.0°C)


Vai awk '/Core 0/.

E em:
Adapter: ISA adapter
Package id 0: +38.0°C (high = +80.0°C, crit = +100.0°C)


Vai awk '/Package id 0/.

Conky estilizado para emitir alertas de acordo com as temperaturas

Regras:
  • < 70 °C = normal (não mostra nada)
  • 70-84 °C = alerta amarelo
  • >= 85 °C = alerta vermelho piscando

${execi 5 sensors | awk '/Core/ {gsub("[+°C]","",$3); sum+=$3; n++} END {if (n>0) printf "%d", sum/n}'}
${if_match ${execi 5 sensors | awk '/Core/ {gsub("[+°C]","",$3); sum+=$3; n++} END {if (n>0) printf "%d", sum/n}'} >= 70}\
${if_match ${execi 5 sensors | awk '/Core/ {gsub("[+°C]","",$3); sum+=$3; n++} END {if (n>0) printf "%d", sum/n}'} >= 85}\
${if_match ${updates} % 2 == 0}${color red}${else}${color}${endif}\
CUIDADO - O PROCESSADOR ESTÁ DERRETENDO!!!\
${else}\
${color yellow}CPU temperature high\
${endif}\
${color}${endif}

Tenha o cuidado de verificar a marca e o modelo do teu processador porque tem processadores que trabalham fácil com 70°C, então adapte o limite do aviso para tuas necessidades, senão o WARNING aparecerá toda hora.
Outras dicas deste autor

Kubernetes, amplo material completo da CNCF com ferramentas e suas instalações, incluindo suporte à OpenAPI

Remapear e/ou trocar teclas no Linux

Instalar PHP8 no Debian 9 e 10

GRUB com senha criptografada no Debian Squeeze

Quantidade de caracteres suportados na barra de endereços dos navegadores

Leitura recomendada

Hackergotchi no GIMP em 2 minutos

Criar CD/DVD com os pacotes do cache no Ubuntu 9.04

Arch Linux e os Deltas de Pacotes

MySQL Server no Rocky Linux

Criando um arquivo xorg.conf no FreeBSD

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts