Inventário de Hardware 3.1
Publicado por Alexandre Martins da Cunha (última atualização em 02/12/2018)
[ Hits: 5.181 ]
Download 1542877916.inventariohw3.4.sh (versão 2)
Precisei esses dias de um inventário de hardware (principalmente, quantidade de memória, quantidade de slots e quais em uso) e não achei nada que fosse aplicado direto pelo terminal, para rodar nas estações.
Versão Atual: 3.1
Histórico:
v1.0 2017-01-10, Alexandre Cunha:
- Versão inicial
v2.0 2017-02-09, Alexandre Cunha:
- Acrescentado suporte a discos;
- Acresentado suporte a partições.
v3.0 2017-02-20, Alexandre Cunha:
- Programa reescrito do zero;
- Refinado o código;
- Uso de variáveis BD e funções(discos, particoes e interfacesRedes).
v3.1 2017-10-03, Alexandre Cunha:
- Removido os ramdrives da lista;
- Corrigido BUG na numeração dos discos;
- Corrigido erro de Ortografia.
Eis a saída do mesmo:
=========================================================
= Informações de inventário - 06/10/2017 18:58 =
=========================================================
Nome do computador: base
1 - SISTEMA
1.1 Informações do Sistema Operacional:
- Arquitetura: x86_64
- Versão do Kernel: 4.9.10-040910-generic
1.2 Informações da Distribuição:
- Distribuição: Debian
- Versão: 8.9
- Codinome: jessie
2 - REDE
2.1-Informações Placa de Rede (eth0):
- Endereço IPv4: 192.168.0.3
- Endereço MAC: 1c:1b:0d:92:9d:8f
3 - HARDWARE
3.1 Processador
- Fabricante: Intel(R) Core(TM) i5-7500 CPU @ 3.40GHz
- Modelo: Intel(R) Core(TM) i5-7500 CPU @ 3.40GHz
- Velocidade (MHz): 3634MHz
- Cache: 6144 KB
3.2 Memória
- Máximo Suportado: 64 GB
- Número de Slot(s): 4
- Quantidade Instalada: 7928MB
- Slot(s) em Uso: 8192
3.3 Discos
3.3.1- Disco sda
- Tamanho : 465,8 GiB
- Tabela de partição : msdos
Partições:
- Nome : sda1
- Tamanho : 367MB
- Tipo : ntfs
- Nome : sda2
- Tamanho : 126GB
- Tipo : ntfs
- Nome : sda3
- Tamanho : 126GB
- Tipo : btrfs
- Nome : sda4
- Tamanho : 248GB
- Tipo : ntfs
3.3.2- Disco sdb
- Tamanho : 2,7 TiB
- Tabela de partição : gpt
Partições:
- Nome : sdb1
- Tamanho : 3001GB
- Tipo : ntfs
3.3.3- Disco sdc
- Tamanho : 1,8 TiB
- Tabela de partição : msdos
Partições:
- Nome : sdc1
- Tamanho : 1999GB
- Tipo : ntfs
- Nome : sdc2
- Tamanho : 1074MB
- Tipo : linux-swap(v1)
Versão 2 - Enviado por Alexandre Martins da Cunha em 22/11/2018
Changelog: # Histórico:
#
# v1.0 2017-01-10, Alexandre Cunha:
# - Versão inicial
#
# v2.0 2017-02-09, Alexandre Cunha:
# - Acresentado suporte a discos
# - Acresentado suporte a partições
#
# v3.0 2017-02-20, Alexandre Cunha:
# - Programa reescrito do zero
# - Refinado o código
# - Uso de variáveis BD e funções(discos, particoes e interfacesRedes)
#
# v3.1 2017-03-20, Alexandre Cunha:
# - Pequenos Ajustes
#
# v3.2 2017-11-06, Alexandre Cunha:
# - Modificado o suporte a Rede para o Debian 9
#
# v3.3 2018-01-10, Alexandre Cunha:
# - Corrigido bug nos discos
#
# v3.4 2018-11-22, Alexandre Cunha:
# - Corrigido bug partição não formatada ou desconhecida
# - Alinhamento da variável BD a direita.
# Licença: GPL.
Download 1542877916.inventariohw3.4.sh
#!/bin/bash
#
# Inventário de Hardware.sh - Gera o inventário de Hardware
#
# Site : http://ittisolucoes.com.br
# Autor : Alexandre Cunha (Cunha A.M) <alexandremartinscunha@yahoo.com.br>
# Manutenção: Alexandre Cunha (Cunha A.M) <alexandremartinscunha@yahoo.com.br>
#
# -------------------------------------------------------------
# Este programa cria um arquivo com o nome da máquina data e hora, anexando os dados referentes a configuração do hardware
# -------------------------------------------------------------
#
#
# Histórico:
#
# v1.0 2017-01-10, Alexandre Cunha:
# - Versão inicial
#
# v2.0 2017-02-09, Alexandre Cunha:
# - Acrescentado suporte a discos;
# - Acrescentado suporte a partições.
#
# v3.0 2017-02-20, Alexandre Cunha:
# - Programa reescrito do zero;
# - Refinado o código;
# - Uso de variáveis BD e funções(discos, particoes e interfacesRedes).
#
# v3.1 2017-10-03, Alexandre Cunha:
# - Removido os ramdrives da lista;
# - Corrigido BUG na numeração dos discos;
# - Corrigido erro de ortografia.
#
# Licença: GPL.
if [ $(id -u) != 0 ] ; then
echo "Você precisar ser root para rodar esse script"
exit 1 ;
fi
function interfacesRede(){
interfacesRede=`ifconfig | cut -d" " -f1 | grep -v "lo"`
numero=1
for interfacesNome in $interfacesRede
do
echo "2.$((numero++))""-Informações Placa de Rede ($interfacesNome):" >> $BD
echo " ""- Endereço IPv4: "`ifconfig $interfacesNome | grep 'inet end' | awk '{print $3}'` >> $BD
echo " ""- Endereço MAC: "`ifconfig $interfacesNome | grep HW | cut -c48-` >> $BD
echo "" >> $BD
done
}
function particoes(){
particoes=`fdisk -l | grep /dev/ | grep -v Disco | grep $1 | cut -d" " -f1 | cut -d"/" -f3`
for particao in $particoes
do
echo " "" ""- Nome : " $particao >> $BD
capacidade=`parted /dev/$particao print | grep $particao | cut -d" " -f3`
tipo=`parted /dev/$particao print | grep -v File | grep -v Disk | grep -v model | grep -v Sector | grep -v Partition | grep -v model | cut -d" " -f14`
echo " "" ""- Tamanho : " $capacidade >> $BD
echo " "" ""- Tipo : " $tipo >> $BD
echo " " >> $BD
done
}
function discos(){
discos=`fdisk -l | grep Disco | cut -d" " -f2 | cut -d"/" -f3| sed 's/://g'| grep -v ram`
numero=1
for disco in $discos
do
echo "3.3.$((numero++))""- Disco $disco " >> $BD
capacidade=`fdisk -l | grep Disco | grep -e $disco | cut -d" " -f3` >> $BD
escala=`fdisk -l | grep Disco | grep -e $disco | cut -d" " -f4 | sed 's/,//g'` >> $BD
echo " ""- Tamanho : "$capacidade $escala >> $BD
echo " ""- Tabela de partição : "`parted /dev/$disco print | grep "Partition Table" | cut -d" " -f3` >> $BD
echo " ""Partições:" >> $BD
echo " " >> $BD
particoes $disco
done
}
BD=`hostname`.$(date +%d-%m-%Y-%H:%M).log
echo "" >> $BD
echo "=========================================================" >> $BD
echo "= Informações de inventário - `date +'%d/%m/%Y %H:%M'` =" >> $BD
echo "=========================================================" >> $BD
echo "" >> $BD
echo " Nome do computador: `hostname`" >> $BD
echo "" >> $BD
echo "1 - SISTEMA" >> $BD
echo "" >> $BD
echo "1.1 Informações do Sistema Operacional:" >> $BD
echo " ""- Arquitetura: "`uname -m` >> $BD
echo " ""- Versão do Kernel: "`uname -r` >> $BD
echo "" >> $BD
echo "1.2 Informações da Distribuição:" >> $BD
echo " ""- Distribuição: "`lsb_release -i | cut -d: -f2` >> $BD
echo " ""- Versão: "`lsb_release -r | cut -d: -f2` >> $BD
echo " ""- Codinome: "`lsb_release -c | cut -d: -f2` >> $BD
echo "" >> $BD
echo "2 - REDE" >> $BD
echo "" >> $BD
interfacesRede
echo "3 - HARDWARE" >> $BD
echo "" >> $BD
echo "3.1 Processador" >> $BD
echo " ""- Fabricante: "`cat /proc/cpuinfo | head -n 31 | grep 'model name' | cut -d : -f2` >> $BD
echo " ""- Modelo: "`cat /proc/cpuinfo | head -n 31 | grep 'model name' | cut -d : -f2` >> $BD
echo " ""- Velocidade (MHz):" `cat /proc/cpuinfo | head -n 31 | grep 'cpu MHz' | cut -d : -f2 | cut -d . -f1`"MHz" >> $BD
echo " ""- Cache: "`cat /proc/cpuinfo | head -n 31 | grep 'cache size' | cut -d : -f2 ` >> $BD
echo "" >> $BD
echo "3.2 Memória" >> $BD
echo " ""- Máximo Suportado: "`dmidecode -t memory | grep 'Maximum Capacity'| cut -d : -f2` >> $BD
echo " ""- Número de Slot(s): "`dmidecode -t memory | grep 'Number Of Devices' | cut -d : -f2` >> $BD
echo " ""- Quantidade Instalada: "`free -m | grep 'Mem:' | awk '{print $2}'`"MB" >> $BD
echo " ""- Slot(s) em Uso: "`dmidecode -t memory | grep 'Size' | grep -v "No Module Installed" | cut -d" " -f2` >> $BD
echo "" >> $BD
echo "3.3 Discos" >> $BD
echo "" >> $BD
discos
echo ""
echo "Gerado Inventário $BD"
sleep 2
cat $BD
Testa DNS da sua conexão e reporta perda(s) de pacotes
Script de instalação para Firefox e Thunderbird - new release
Montando compartilhamentos windows
Gerenciamento de usários do Squid usando Dialog
Script simples para ripar CDs de áudio em mp3 com uso do CDDB para nomear as faixas.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
O programa assinador digital (1)
PIP3 - erro ao instalar módulo do mariadb para o Python (9)
É normal não gostar de KDE? (8)
dpkg: erro: gatilho de arquivo duplicado chamado pelo arquivo de nome (6)









