Monitore as temperaturas da AMD Ryzen no Linux com os mais recentes módulos do kernel

Monitore as temperaturas da AMD Ryzen no Linux com os mais recentes módulos do kernel

Objetivo

Monitore as temperaturas do sistema e a tensão em um sistema AMD Ryzen executando o Linux.

Distribuições

Todas as distribuições em execução do kernel 4.11 ou superior

Requisitos

Uma instalação do Linux Working com o Kernel 4.11 ou mais privilégios de raiz.

Dificuldade

Médio

Convenções

  • # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de sudo comando
  • $ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular

Introdução

As CPUs Ryzen da AMD estão fora há vários meses, mas a AMD ainda não divulgou nenhuma especificação ou código para obter suporte de monitoramento de temperatura para sensores de CPU no Linux.

Felizmente, existem sensores bastante precisos nas placas -mãe Ryzen, e eles são acessíveis através do Linux. Você só pode aproveitar ao máximo eles usando os mais recentes módulos do kernel e, em alguns casos.

Instale as dependências de construção

Primeiro, você precisará colocar as dependências de construção na fila para compilar as versões mais recentes dos módulos de sensor do Git.

Supondo que você esteja usando uma distro baseada no Debian, instale o seguinte.

$ sudo apt install build-essencial bison flex linux headers $ sudo apt build-dep linux $ sudo apt build-dep lm-sensores 

Determine seu módulo

Existem dois módulos que você encontrará nas placas Ryzen. Eles são IT87 e NCT6775. Quase todos os quadros têm um ou outro. IT87 é mais comum.

Existem algumas maneiras de verificar qual sua placa tem. Pode ser mais fácil fazer uma pesquisa online. Isso pode não aumentar nada, então você terá que usar modProbe

Se você compilou seu próprio kernel, certifique -se de criar os dois módulos. Os núcleos de distribuição devem tê -los disponíveis. Em seguida, tente carregar cada um dos módulos. Se você receber um erro afirmando que não tem esse hardware, é isso que você não tem. Experimente o outro. Qualquer que seja bem -sucedido, é o que você precisa construir.



Pegue e construa

Esta próxima seção vai se referir ao IT87 módulo, mas o processo é exatamente o mesmo para ambos. Apenas substitua NCT6775, Se esse é o que você tem.

Vá para o diretório que deseja construir e clonar o repositório do Git.

$ CD Downloads $ git clone https: // github.com/groeck/it87.git 

Lembrar: Substituto NCT6775 aqui também.

Agora, mude para o diretório clonado.

$ CD IT87

Dependendo da sua distribuição, pode ser necessário modificar o Makefile. Ele precisa apontar para a localização real da fonte ou cabeçalhos do seu kernel. Se você receber um erro dizendo que fazer Não consigo encontrar seus cabeçalhos de kernel, você precisa modificar o arquivo.

Abra o Makefile e procure a seguinte linha.

Kernel_build: =/usr/src/linux-headers-$ (destino)

Altere -o para apontar para a localização real de seus cabeçalhos ou fonte. O exemplo abaixo funciona para o gentoo.

Kernel_build: =/usr/src/linux

Uma vez que isso estiver resolvido, você pode realmente construir seu módulo.

$ make -j5

Não há muita fonte, então a construção não demorará muito.

Antes de instalar, verifique se o seu /bota A partição é montada. A instalação precisa do seu Sistema.mapa arquivo.

$ sudo monte /dev /sda1 /bota $ sudo make install 

Construir lm_sensors

Você pode ou não precisar fazer essa parte, mas não pode realmente machucar. Então, se você não tiver certeza, faça isso.

cd Faça backup de um nível e pegue as fontes mais recentes com o Git.

$ CD… $ git clone https: // github.com/groeck/lm-sensores.git 

Mude para a nova pasta e construa -a.

$ cd lm -sensores $ make -j5 all 

Não se preocupe se você vir alguns erros. Certifique -se de que a compilação realmente seja concluída, embora.

Quando estiver pronto, instale.

$ sudo fazer instalar


Teste-o

Você pode carregar os módulos agora. Usar modProbe fazer isso.

$ sudo modprobe it87

Você pode precisar forçar um ID para o módulo.

$ sudo modprobe it87 force_id = 0x8622 

Alguns id de força comuns para it87 são 0x8622, 0x8628, 0x8728, 0x8732. Para nct6775, tente 0xd120 ou 0xd352.

Inicie seu daemon lm_sensors (se ainda não estiver) e tente detectar seus sensores.

$ sudo systemctl start lm_sensors $ sudo sensores-detectar 

Aqui é onde pode ficar estranho. Pode não detectar nada na varredura. Não leve isso pelo valor nominal. Execute a planície sensores comando para ver com certeza. Em muitos casos, você verá a produção de seus sensores de placa -mãe.

Algumas pessoas podem não ter tanta sorte. O lançamento de Ryzen tem sido extremamente irregular. Pequenas diferenças aqui e ali tiveram um enorme impacto. Se não funcionou para você, volte para as atualizações regularmente e mantenha seu BIOS atualizado. Eventualmente, você deve ver o apoio.

Torná -lo permanente

Parabéns! Você chegou tão longe. É hora de salvar seu progresso, então seu computador o usa toda vez que ele inicializa.

Crie os seguintes arquivos.

$ sudo touch /etc /módulos-carregamento.D/IT87.conf $ sudo toque /etc /modprobe.D/IT87.conf 

Em /etc/módulos-carga.D/IT87.conf, Coloque a linha abaixo.

IT87

Então, coloque esta linha em /etc/modprobe.D/IT87.conf.

Opções it87 force_id = 0x8622

Obviamente, certifique -se de usar o módulo real e o ID de força que fez seus sensores funcionarem.

Pensamentos finais

O lançamento de Ryzen foi confuso, especialmente no Linux. Isso não significa que é uma plataforma ruim. Na verdade, Ryzen é uma ótima opção para uma estação de trabalho Linux multithread. Esteja ciente dos problemas em potencial.

Nesse caso, esses módulos de kernel farão com que seus sensores de temperatura funcionarão conforme necessário. Eventualmente, a necessidade de fazer isso desaparecerá, pois o suporte é mesclado no kernel.

Tutoriais do Linux relacionados:

  • Coisas para instalar no Ubuntu 20.04
  • Obtenha a temperatura da CPU no Linux
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Melhor ferramenta de monitoramento do sistema para Linux
  • Ubuntu 20.04 Monitoramento do sistema com widgets conky
  • Arquivos de configuração do Linux: os 30 primeiros mais importantes
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Download do Linux
  • Comandos de verificação de saúde básica do Linux
  • Ubuntu 22.04 Monitoramento do sistema com widgets conky