Teste de hardware e outros

Publicado por Aline (última atualização em 26/06/2024)

[ Hits: 10.862 ]

Homepage: Não possui

Download teste_hardware

Download teste_hardware.sh (versão 2)

Download 1719259676.teste_hardware.sh (versão 3)




Verificando o hardware e outros. Foi feito especificamente para computadores com mais de 1 GB de memória. Estou treinando shell script e quero melhorá-lo, está com poucas variáveis e pode não funcionar em todas as distros.

  



Versões atualizadas deste script

Versão 2 - Enviado por aguamole em 18/04/2021

Changelog: Autor(a) original: aline.abreu <www.vivaolinux.com.br/~aline.abreu">www.vivaolinux.com.br/~aline.abreu>
Autor versão2: aguamole <www.vivaolinux.com.br>
Licença: GNU/GPL v3 <https://www.gnu.org/licenses/gpl-3.0.txt>
Descrição: Gera um arquivo contendo as informações sobre o hardware e salva no diretório atual.

Manual: para executar é assim:
$ sudo bash /diretorio/teste_hardware

Changelog:
Versão original publicado em: 26/10/2010

Versão 2 escrito em: dom 18 abr 2021
* Mudança na shebang, agora caso o bash esteja em outro diretório além do "/bin/bash" ele sera encontrado automaticamente.
* Adicionado um cabeçalho.
* Remoção de vários "echo" desnecessários.
* Varias correções de bugs.
* Melhora nos comandos.
* Alguns comandos adicionados.

Download teste_hardware.sh


Versão 3 - Enviado por aguamole em 24/06/2024

Changelog: Esse script testa itens de hardware, do sistema operacional, bateria, memória e outros itens. Basta salvar o arquivo sh, dar um "chmod +x" no mesmo e depois executá-lo digitando ./nome_do_arquivo.sh. Uma vez terminado um arquivo txt será criado na mesma pasta onde o arquivo foi salvo/executado, basta abri-lo para ver as informações coletadas.

Melhorias feitas na versão 3:

# Versão 3 escrito em: dom 14 abr 2024
# * Correção na informação da bateria.
# * Agora é detectado automaticamente se é root no dmidecode e se não for apenas emite um aviso e continua execução.
# * Correção de bug na verificação de memória simplificando com o "free -m".
# * Simplificação na detecção de armazenamento.
# * Agora foi adicionado mais detecção sobre a GPU e suas APIs.
# * Adicionado novo recurso de detecção de quando o sistema operacional foi instalado.
# * Adicionado novo recurso de detecção dos monitores.
# * Adicionado suporte a argumentos.
# * Adicionado suporte a verificação do sistema operacional por meio do /etc/os-release.
# * Reestruturação do código para deixar o código mais limpo.
# * Seguido as sugestões do msoliver.

Download 1719259676.teste_hardware.sh


Esconder código-fonte

#!/bin/bash

#verificando a data

echo "" >> $HOME/Desktop/log_do_teste.txt
echo "Data e hora do Teste:" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt

date >> $HOME/Desktop/log_do_teste.txt

#Verificando o dmidecode
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "dmidecode:" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
dmidecode | grep -i product >> $HOME/Desktop/log_do_teste.txt

#verifica o modelo do processador
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "Modelo do Processador:" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
cat /proc/cpuinfo | grep -i 'model name' >> $HOME/Desktop/log_do_teste.txt

#verifica a Quantidade de memória em MB
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "Quantidade de Memória:" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "`free -m | grep -i 'mem' | cut -d" " -f12` MB" >> $HOME/Desktop/log_do_teste.txt


#verifica a Quantidade de Espaço no HD em GB
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "Quantidade de Espaço em Disco:" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "`df -a -h | grep -i '/dev/sda1' | cut -d" " -f1` `df -a -h | grep -i '/dev/sda1' | cut -d" " -f15`B" >> $HOME/Desktop/log_do_teste.txt
echo "`df -a -h | grep -i '/dev/sda3' | cut -d" " -f1` `df -a -h | grep -i '/dev/sda3' | cut -d" " -f15`B" >> $HOME/Desktop/log_do_teste.txt
echo "`df -a -h | grep -i '/dev/sda4' | cut -d" " -f1` `df -a -h | grep -i '/dev/sda4' | cut -d" " -f15`" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt


#Verificando a placa de vídeo\driver
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "Informações sobre renderização 3D:" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt

glxinfo | grep rendering >> $HOME/Desktop/log_do_teste.txt

#Verifica informações data e hora da imagem
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "Informações sobre a data e a hora da imagem:" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
cat /var/log/img_info.txt >> $HOME/Desktop/log_do_teste.txt

#Verifica driver usado
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "Informações sobre o driver de vídeo:" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
cat /etc/X11/xorg.conf | grep Driver >> $HOME/Desktop/log_do_teste.txt

#Verifica versão do kernel
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "Informações sobre o kernel:" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
uname -a >> $HOME/Desktop/log_do_teste.txt

#verifica capacidade da bateria
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "Informações sobre capacidade da bateria:" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
cat /proc/acpi/battery/BAT0/info | grep -i 'design capacity' >> $HOME/Desktop/log_do_teste.txt
cat /proc/acpi/battery/BAT0/info  | grep -i 'last full'>> $HOME/Desktop/log_do_teste.txt
cat /proc/acpi/battery/BAT0/info  | grep -i 'model number'>> $HOME/Desktop/log_do_teste.txt

#Verifica o LSPCI
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "===== Resultado do LSPCI ====" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
lspci >> $HOME/Desktop/log_do_teste.txt

#Verifica o LSUSB
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "===== Resultado do LSUSB ====" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
lsusb >> $HOME/Desktop/log_do_teste.txt

echo "" >> $HOME/Desktop/log_do_teste.txt
echo "--- FIM ---" >> $HOME/Desktop/log_do_teste.txt



Scripts recomendados

Octave - Método de Runge-Kutta

Script em Bath "DOS" para Upload e Download de arquivos usando o SSH

Octave - Método de Gauss-Legendre

Função Fatorial Recursiva em Fortran 95

Octave - Calcular raiz pelo método de Newton


  

Comentários
[1] Comentário enviado por albfneto em 26/10/2010 - 17:46h

vou testar seu script em sabayon e gentoo. depois retorno os resulfados.

Resultados. A parte referente a Bateria, não funciona, mas é esperado,pq são desktops que tenho e não notes...

o comando dmidecode, só se for executado como root, ou seja se eu executar o script todo como root.

o espaço de disco e a quantidade de memória, não estão sendo registradas numéricamente

O resto etá funcioando sim.

Sugestões, se quiser, fazer pausas para ele executar um pouco mais lento,e / ou fazer outra versão, uma versão para executar cada teste, apertando uma tecla por ex. com saida no proprio terminal.

Abaixo, este é o conteúdo do arquivo log, após rodar em sabayon linux, 32 bits, em um semprom:


Data e hora do Teste:

Qui Out 28 21:45:33 BRST 2010

dmidecode:

Product Name:
Product Name: SiS-741

Modelo do Processador:

model name : AMD Sempron(tm) 2800+

Quantidade de Memória:

MB

Quantidade de Espaço em Disco:

B
B



Informações sobre renderização 3D:

direct rendering: Yes

Informações sobre a data e a hora da imagem:


Informações sobre o driver de vídeo:

Driver "kbd"
Driver "mouse"
Driver "nv"
Driver "nvidia"

Informações sobre o kernel:

Linux fcfrp62 2.6.28-sabayon #1 SMP Tue Mar 24 11:01:52 UTC 2009 i686 AMD Sempron(tm) 2800+ AuthenticAMD GNU/Linux

Informações sobre capacidade da bateria:


===== Resultado do LSPCI ====

00:00.0 Host bridge: Silicon Integrated Systems [SiS] 741/741GX/M741 Host (rev 03)
00:01.0 PCI bridge: Silicon Integrated Systems [SiS] SiS AGP Port (virtual PCI-to-PCI bridge)
00:02.0 ISA bridge: Silicon Integrated Systems [SiS] SiS963 [MuTIOL Media IO] (rev 25)
00:02.1 SMBus: Silicon Integrated Systems [SiS] SiS961/2 SMBus Controller
00:02.5 IDE interface: Silicon Integrated Systems [SiS] 5513 [IDE]
00:02.7 Multimedia audio controller: Silicon Integrated Systems [SiS] AC'97 Sound Controller (rev a0)
00:03.0 USB Controller: Silicon Integrated Systems [SiS] USB 1.1 Controller (rev 0f)
00:03.1 USB Controller: Silicon Integrated Systems [SiS] USB 1.1 Controller (rev 0f)
00:03.2 USB Controller: Silicon Integrated Systems [SiS] USB 2.0 Controller
00:04.0 Ethernet controller: Silicon Integrated Systems [SiS] SiS900 PCI Fast Ethernet (rev 91)
00:1f.0 VGA compatible controller: Silicon Integrated Systems [SiS] 661/741/760 PCI/AGP or 662/761Gx PCIE VGA Display Adapter
01:00.0 VGA compatible controller: nVidia Corporation NV34 [GeForce FX 5500] (rev a1)

===== Resultado do LSUSB ====

Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 03f0:8204 Hewlett-Packard Printing Support
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

--- FIM ---

[2] Comentário enviado por aline.abreu em 26/10/2010 - 18:13h

albfneto, obriagda

[3] Comentário enviado por zebento.cpd em 26/10/2010 - 20:03h

hehe, tava vendo seu script, bem legal, vi no seu perfil q foi seu aniversario no domingo. Parabens pelo script e pelo aniversario.

[4] Comentário enviado por aline.abreu em 26/10/2010 - 20:35h

zebento.cpd, obrigada :)

[5] Comentário enviado por removido em 29/10/2010 - 18:17h

Aline, ótimo script, fiz umas alterações caso lhe interesse.

Como dito pelo Alberto Neto, há a necessidade de rodar o dmidecode como root, então deixei assim:

#Verificando o dmidecode
echo "" >> $HOME/Desktop/log_do_teste.txt
echo "dmidecode:" >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
sudo dmidecode | grep -i product >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
sudo dmidecode --type memory >> $HOME/Desktop/log_do_teste.txt ### Nesse caso é muito detalhado, não sei se é do seu interesse.

e na parte da placa de vídeo deixei assim:

glxinfo | grep render >> $HOME/Desktop/log_do_teste.txt
echo "" >> $HOME/Desktop/log_do_teste.txt
glxinfo | grep direct >> $HOME/Desktop/log_do_teste.txt


O LOG:

Data e hora do Teste:

Sex Out 29 18:17:33 BRST 2010

dmidecode:

Product Name: System Product Name
Product Name: M2N68-AM SE2

# dmidecode 2.9
SMBIOS 2.5 present.

Handle 0x0008, DMI type 5, 20 bytes
Memory Controller Information
Error Detecting Method: 64-bit ECC
Error Correcting Capabilities:
None
Supported Interleave: One-way Interleave
Current Interleave: One-way Interleave
Maximum Memory Module Size: 2048 MB
Maximum Total Memory Size: 4096 MB
Supported Speeds:
70 ns
60 ns
Supported Memory Types:
DIMM
SDRAM
Memory Module Voltage: 3.3 V
Associated Memory Slots: 2
0x0009
0x000A
Enabled Error Correcting Capabilities:
None

Handle 0x0009, DMI type 6, 12 bytes
Memory Module Information
Socket Designation: DIMM0
Bank Connections: 0 1
Current Speed: 30 ns
Type: DIMM
Installed Size: 2048 MB (Double-bank Connection)
Enabled Size: 2048 MB (Double-bank Connection)
Error Status: OK

Handle 0x000A, DMI type 6, 12 bytes
Memory Module Information
Socket Designation: DIMM1
Bank Connections: 2 3
Current Speed: 30 ns
Type: DIMM
Installed Size: 2048 MB (Double-bank Connection)
Enabled Size: 2048 MB (Double-bank Connection)
Error Status: OK

Handle 0x0026, DMI type 16, 15 bytes
Physical Memory Array
Location: System Board Or Motherboard
Use: System Memory
Error Correction Type: None
Maximum Capacity: 4 GB
Error Information Handle: Not Provided
Number Of Devices: 2

Handle 0x0028, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x0026
Error Information Handle: Not Provided
Total Width: 64 bits
Data Width: 64 bits
Size: 2048 MB
Form Factor: DIMM
Set: None
Locator: DIMM0
Bank Locator: BANK0
Type: DDR2
Type Detail: Synchronous
Speed: 667 MHz (1.5 ns)
Manufacturer: Manufacturer0
Serial Number: SerNum0
Asset Tag: AssetTagNum0
Part Number: PartNum0

Handle 0x002A, DMI type 17, 27 bytes
Memory Device
Array Handle: 0x0026
Error Information Handle: Not Provided
Total Width: 64 bits
Data Width: 64 bits
Size: 2048 MB
Form Factor: DIMM
Set: None
Locator: DIMM1
Bank Locator: BANK1
Type: DDR2
Type Detail: Synchronous
Speed: 667 MHz (1.5 ns)
Manufacturer: Manufacturer1
Serial Number: SerNum1
Asset Tag: AssetTagNum1
Part Number: PartNum1


Modelo do Processador:

model name : AMD Athlon(tm) II X4 630 Processor
model name : AMD Athlon(tm) II X4 630 Processor
model name : AMD Athlon(tm) II X4 630 Processor
model name : AMD Athlon(tm) II X4 630 Processor

Quantidade de Memória:

MB

Quantidade de Espaço em Disco:

/dev/sda2 30GB
/dev/sda3 40GB


Informações sobre renderização 3D:

direct rendering: Yes
OpenGL renderer string: GeForce 9400 GT/PCI/SSE2
GL_NV_conditional_render, GL_NV_copy_depth_to_color, GL_NV_copy_image,
GL_NVX_conditional_render, GL_NVX_gpu_memory_info,

direct rendering: Yes
GL_EXT_Cg_shader, GL_EXT_depth_bounds_test, GL_EXT_direct_state_access,

Informações sobre a data e a hora da imagem:


Informações sobre o driver de vídeo:

Driver "nvidia"

Informações sobre o kernel:

Linux debian 2.6.32-5-amd64 #1 SMP Fri Sep 17 21:50:19 UTC 2010 x86_64 GNU/Linux

Informações sobre capacidade da bateria:


===== Resultado do LSPCI ====

00:00.0 RAM memory: nVidia Corporation MCP61 LPC Bridge (rev a1)
00:01.0 ISA bridge: nVidia Corporation MCP61 LPC Bridge (rev a2)
00:01.1 SMBus: nVidia Corporation MCP61 SMBus (rev a2)
00:01.2 RAM memory: nVidia Corporation MCP61 Memory Controller (rev a2)
00:02.0 USB Controller: nVidia Corporation MCP61 USB Controller (rev a3)
00:02.1 USB Controller: nVidia Corporation MCP61 USB Controller (rev a3)
00:04.0 PCI bridge: nVidia Corporation MCP61 PCI bridge (rev a1)
00:05.0 Audio device: nVidia Corporation MCP61 High Definition Audio (rev a2)
00:06.0 IDE interface: nVidia Corporation MCP61 IDE (rev a2)
00:07.0 Bridge: nVidia Corporation MCP61 Ethernet (rev a2)
00:08.0 IDE interface: nVidia Corporation MCP61 SATA Controller (rev a2)
00:09.0 PCI bridge: nVidia Corporation MCP61 PCI Express bridge (rev a2)
00:0b.0 PCI bridge: nVidia Corporation MCP61 PCI Express bridge (rev a2)
00:0c.0 PCI bridge: nVidia Corporation MCP61 PCI Express bridge (rev a2)
00:18.0 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor HyperTransport Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Miscellaneous Control
00:18.4 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Link Control
02:00.0 VGA compatible controller: nVidia Corporation G96 [GeForce 9400 GT] (rev a1)

===== Resultado do LSUSB ====

Bus 002 Device 003: ID 10d6:1101 Actions Semiconductor Co., Ltd D-Wave 2GB MP4 Player / AK1025 MP3/MP4 Player
Bus 002 Device 002: ID 03f0:4c11 Hewlett-Packard PSC 1500 series
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 004: ID 19d2:0031 ONDA Communication S.p.A. ZTE MF636
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

--- FIM ---


Um abraço e parabéns pelo seu aniversário e por suas contribuições.

[6] Comentário enviado por maurixnovatrento em 24/04/2021 - 11:41h


Muito bom.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]

[7] Comentário enviado por msoliver em 06/05/2021 - 01:53h

Aguamole,

Tem erro na quantidade de memória....
echo "$(free -m | grep 'Mem' | cut -d" " -f10) MiB"
--------------------------------------------------------------
# Usando o dmidecode para obter informação da MOBO
echo "
Placa mãe....."
dmidecode -t1, refere- se ao "system", 'mainboard' é t2
----------------------------------------------------------------------
Case tudo com um grep:
dmidecode -t 1 | grep 'SMBIOS'; dmidecode -t 1 | grep 'Manufacturer:'; dmidecode -t 1 | grep 'Product Name:'
--------------------------------------------------------------
Bateria, simplifique....
grep -i 'design capacity' </proc/acpi/battery/BAT0/info
grep -i 'last full' </proc/acpi/battery/BAT0/info
rep -i 'model number' </proc/acpi/battery/BAT0/info
=> inxi -B <=

Kernel....
Kernel $(uname -s) $(uname -r).......
uname -sr tem o mesmo efeito.........
Rsrsrsrsrsrs
EOF!

______________________________________________________________________
Att.: Marcelo Oliver
______________________________________________________________________



______________________________________________________________________


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts