A Random Access Memory (RAM) é um componente crucial para o desempenho do seu sistema Linux. Problemas na RAM podem levar a instabilidade, travamentos, erros aleatórios e até mesmo falhas na inicialização do sistema. O Memtest86+ é uma ferramenta independente e abrangente projetada para testar a integridade da sua memória RAM, identificando erros que outros diagnósticos podem não detectar. Este guia irá mostrar como utilizar o Memtest86+ para verificar a saúde da sua memória no Linux.
Sintomas de problemas na memória RAM no Linux
- Travamentos frequentes e aleatórios do sistema.
- Tela azul (em sistemas Windows dual-boot) ou erros de kernel inesperados no Linux.
- Corrupção de dados inexplicável.
- Problemas na inicialização do sistema (o computador liga, mas não carrega o sistema operacional).
- Desempenho lento e inexplicável.
O que é o Memtest86+?
O Memtest86+ é um software de teste de memória de código aberto que funciona fora do sistema operacional. Ele é executado diretamente a partir de um dispositivo de boot (como um pendrive ou CD/DVD) e realiza uma série de testes rigorosos na sua memória RAM para identificar erros. Por rodar fora do sistema operacional, ele elimina a possibilidade de interferência do software em execução.
Como executar o Memtest86+
- Download do Memtest86+: Acesse o site oficial do Memtest86+ (normalmente encontrado facilmente através de uma pesquisa na internet) e procure pela seção de downloads. Você geralmente terá opções para baixar uma imagem ISO (para gravar em um CD/DVD) ou um arquivo para criar um pendrive bootável.
- Criando a Mídia de Boot:
- Pendrive: A maioria dos usuários opta por criar um pendrive bootável. Você pode usar ferramentas como
dd
no Linux (com extremo cuidado para não sobrescrever o disco errado), Rufus (no Windows) ou Etcher (multiplataforma) para gravar o arquivo baixado no pendrive. Siga as instruções específicas fornecidas no site do Memtest86+ ou na documentação da ferramenta de gravação. Exemplo de uso dodd
(requer cautela):
- Pendrive: A maioria dos usuários opta por criar um pendrive bootável. Você pode usar ferramentas como
sudo dd if=/caminho/para/memtest86+.img of=/dev/sdX bs=1M status=progress
- Substitua
/caminho/para/memtest86+.img
pelo caminho do arquivo baixado e/dev/sdX
pela identificação do seu pendrive (verifique comlsblk
). Certifique-se de que/dev/sdX
seja o seu pendrive, pois este comando pode apagar todos os dados do dispositivo de destino. - CD/DVD: Se preferir, grave a imagem ISO baixada em um CD ou DVD utilizando seu software de gravação preferido.
- Configurando o Boot para a Mídia do Memtest86+:Reinicie o seu computador e acesse o menu de boot ou as configurações da BIOS/UEFI. A tecla para acessar essas opções varia dependendo do fabricante da placa-mãe (geralmente Delete, F2, F12, Esc ou outra tecla específica exibida durante a inicialização). No menu de boot, selecione o seu pendrive ou CD/DVD como dispositivo de boot primário. Se você estiver nas configurações da BIOS/UEFI, procure pelas opções de boot e defina a ordem de boot para que a sua mídia do Memtest86+ seja a primeira.
- Executando o Teste:Após configurar o boot, o Memtest86+ deverá iniciar automaticamente. Você verá uma tela com informações sobre a sua memória e o progresso do teste.
- Os testes serão executados em loops. É recomendado deixar o Memtest86+ rodar por um período significativo para aumentar a chance de detectar erros intermitentes. Um mínimo de algumas horas é sugerido, e idealmente, deixe-o rodar durante a noite.
- Observe a tela em busca de erros. Se o Memtest86+ encontrar algum erro, ele exibirá uma mensagem em vermelho indicando o tipo e a localização do erro (se possível).
- Você pode interromper o teste a qualquer momento pressionando a tecla Esc.
Interpretando os resultados do Memtest86+
Memtest86+ v6.30
[ Mon Mar 24 15:17:00 2025 ]
Pass 1 of 4, 74%
Testing: [01] Address test, own address
Test execution in progress...
CPU: Intel(R) Core(TM) i5-XXXX CPU @ 2.50GHz
RAM: 8192MB (7982MB usable)
Settings: RAMSPD: 1600MHz (DDR3) / XMP: Disabled / ECC: Disabled
MemMap:
0000000000 - 0009EFFF ( 632K) System Reserved
0009F00000 - 000FFFFFFF ( 97M) System Reserved
0010000000 - 01FFFFFFFF ( 8G) User RAM
FE00000000 - FE000FFF ( 4K) System Reserved
FFFF80000000 - FFFFFFFFFFFF ( 8K) BIOS Reserved
Test | Test Name | # Tests | Errors | Status
-----|--------------------------------|---------|--------|---------
[0] | Address test, own address | 16 | 0 | Running
[1] | Address test, walking bit | 16 | 0 | Not started
[2] | Address test, own address | 16 | 0 | Not started
[3] | Moving inversions, ones & zeros| 16 | 0 | Not started
[4] | Moving inversions, 8-bit pattern| 16 | 0 | Not started
[5] | Moving inversions, random pattern| 16 | 0 | Not started
[6] | Block move, 64 moves | - | 0 | Not started
[7] | Moving inversions, 20-bit pattern| 16 | 0 | Not started
[8] | Random number sequence | - | 0 | Not started
[9] | Hammer test | - | 0 | Not started
[10] | Cache stress | - | 0 | Not started
[11] | Memory fill mode | 3 | 0 | Not started
[12] | Compare MOV vs STO | 3 | 0 | Not started
[13] | Bits in place [Hammer] | - | 0 | Not started
Errors found so far: 0
Press ESC to exit.
- Nenhum erro encontrado: Se o Memtest86+ rodar por várias horas sem exibir nenhuma mensagem de erro em vermelho, é provável que sua memória RAM esteja funcionando corretamente. Outros problemas podem ser a causa da instabilidade do seu sistema.
- Erros encontrados: Qualquer erro exibido pelo Memtest86+ indica um problema com um ou mais módulos de memória RAM.
Explicação da Saída do Memtest26+:
Memtest86+ v6.30
: Indica a versão do software em execução.[ Mon Mar 24 15:17:00 2025 ]
: Timestamp da execução do teste.Pass 1 of 4, 74%
: Indica que o teste está na primeira de quatro passagens completas e que 74% desta passagem já foi concluída. Cada passagem consiste em uma série de testes diferentes.Testing: [01] Address test, own address
: Informa qual teste específico está sendo executado no momento (neste caso, o teste de endereço, verificando se cada célula de memória consegue armazenar seu próprio endereço).Test execution in progress...
: Mensagem indicando que o teste está rodando.CPU: Intel(R) Core(TM) i5-XXXX CPU @ 2.50GHz
: Detalhes sobre o processador detectado.RAM: 8192MB (7982MB usable)
: Informa a quantidade total de memória RAM detectada (8192MB) e a quantidade utilizável (7982MB), descontando a memória reservada pelo sistema.Settings:
: Mostra configurações importantes da memória, como velocidade (RAMSPD), perfil XMP (desabilitado neste caso) e detecção de ECC (desabilitado).MemMap:
: Exibe o mapa da memória física, mostrando como os endereços de memória estão alocados para diferentes partes do sistema (RAM do usuário, memória reservada, etc.).Test | Test Name ...
: Esta tabela lista os diferentes testes que serão executados durante as passagens.Test
: Um número de identificação para cada teste.Test Name
: O nome do teste específico que será realizado (ex: “Address test, walking bit”, “Moving inversions”).# Tests
: O número de variações ou sub-testes dentro de um teste principal (pode ser-
para testes contínuos).Errors
: O número de erros detectados até o momento para aquele teste específico. Se algum erro for encontrado, este número será maior que zero e a linha do teste geralmente será destacada em vermelho.Status
: O estado atual do teste (“Running”, “Not started”, “Pass” se concluído sem erros).
Errors found so far: 0
: Um resumo do número total de erros encontrados em todos os testes até o momento. Se houver erros, este número será maior que zero.Press ESC to exit.
: Instrução para sair do programa.
Em caso de erro, uma linha na tabela de testes mostraria um número maior que zero na coluna “Errors”, geralmente com a linha destacada em vermelho. O resumo “Errors found so far” também indicaria o número total de erros detectados.
Por exemplo:
Test | Test Name | # Tests | Errors | Status
-----|--------------------------------|---------|--------|---------
[3] | Moving inversions, ones & zeros| 16 | 5 | Running
Neste exemplo hipotético, o teste “Moving inversions, ones & zeros” encontrou 5 erros até o momento. O texto “Errors found so far:” também mostraria um valor maior que zero.
Próximos passos em caso de erros
- Anote os detalhes dos erros: Se possível, anote o tipo de erro e em qual teste ele ocorreu.
- Teste os módulos individualmente: Se você tiver mais de um módulo de memória RAM instalado, desligue o computador, abra o gabinete e remova todos os módulos, deixando apenas um instalado. Execute o Memtest86+ novamente. Repita este processo para cada módulo individualmente para identificar qual(is) está(ão) com problema.
- Substitua os módulos defeituosos: Uma vez identificado o módulo ou módulos com erro, eles devem ser substituídos por novos.
Conclusão
Verificar a saúde da sua memória RAM com o Memtest86+ é um passo essencial no diagnóstico de problemas de hardware no Linux. Ao seguir este guia, você poderá criar uma mídia de boot, executar o teste e interpretar os resultados, permitindo identificar e solucionar problemas relacionados à memória para garantir a estabilidade e o bom funcionamento do seu sistema. Lembre-se de que testes rigorosos e prolongados aumentam a probabilidade de detecção de erros.