Gerenciamento de software e hardware de desktop
Publicado por Amaury Borges Souza (última atualização em 26/09/2019)
[ Hits: 5.701 ]
Homepage: https://amaurybsouza.medium.com/
Esse script tem por objetivo mostrar as informações básicas de hardware e software do equipamento, tais como processador, memória, kernel, endereço de rede, serial number do desktop. Foi implementado para utilização em sistemas Debian/Ubuntu. Já estou trabalhando em outra versão que seja compatível com CentOS/Fedora.
#!/usr/bin/env bash
2 # ------------------------------------------------------------------------ #
3 # Script Name: hardware_desktop.sh
4 # Description: Show informations about machine hardware.
5 # Written by: Amaury Souza
6 # Maintenance: Amaury Souza
7 # ------------------------------------------------------------------------ #
8 # Usage:
9 # $ ./hardware_desktop.sh
10 # ------------------------------------------------------------------------ #
11 # Bash Version:
12 # Bash 4.4.19
13 # ------------------------------------------------------------------------ #
14
15 function menuprincipal () {
16 clear
17 echo " "
18 echo HARDWARE MACHINE INFORMATION $0
19 echo " "
20 echo "Escolha uma opção abaixo para começar!
21
22 1 - Verificar processador do desktop
23 2 - Verificar kernel do sistema
24 3 - Verificar softwares instalados
25 4 - Versão do sistema operacional
26 5 - Verificar memória do equipamento
27 6 - Verificar serial number
28 7 - Verificar IP do sistema
29 0 - Sair do menu"
30 echo " "
31 echo -n "Opção escolhida: "
32 read opcao
33 case $opcao in
34 1)
35 function processador () {
36 TIME=2
37 CPU_INFO=`cat /proc/cpuinfo | grep -i "^model name" | cut -d ":" -f2 | sed -n '1p'`
38 echo "Modelo de CPU: $CPU_INFO"
39 sleep $TIME
40 }
41 processador
42 read -n 1 -p "<Enter> para menu principal"
43 menuprincipal
44 ;;
45
46 2)
47 function kernel () {
48 #Para sistemas RED HAT: cat /etc/redhat-release
49 KERNEL_VERSION_UBUNTU=`uname -r`
50 KERNEL_VERSION_CENTOS=`uname -r`
51 if [ -f /etc/lsb-release ]
52 then
53 echo "Versão do kernel: $KERNEL_VERSION_UBUNTU"
else
55 echo "Versão do kernel: $KERNEL_VERSION_CENTOS"
56 fi
57 }
58 kernel
59 read -n 1 -p "<Enter> para menu principal"
60 menuprincipal
61 ;;
62
63 3)
64 function softwares () {
65 #while true; do (antes eu estava usando esse recurso para controlar o menu, depois para corrigir adicionei uma function)
66 TIME=2
67 echo " "
68 echo "Escolha uma opção abaixo para listar os programas!
69
70 1 - Listar programas do Ubuntu
71 2 - Listar programas do Fedora
72 3 - Instalar programas padrões
73 4 - Voltar ao sistema"
74 echo " "
75 echo -n "Opção escolhida: "
76 read alternative
77 case $alternative in
78 1)
79 echo Listando todos os programas do sistema Ubuntu...
80 sleep $TIME
81 dpkg -l > /tmp/programas.txt
82 echo A lista de programas foi gerada e está disponível no /tmp do seu sistema
83 sleep $TIME
84 echo " "
85 echo "Você será redirecionado para o menu inicial do programa!" | tr [a-z] [A-Z]
86 sleep $TIME
87 ;;
88 2)
89 echo Listando todos os programas do sistema Fedora...
90 sleep $TIME
91 yum list installed > /tmp/programas.txt
92 echo A lista de programas foi gerada e está disponível no /tmp
93 sleep $TIME
94 ;;
95 3)
96 echo Instalando pogramas padrões...
97 LIST_OF_APPS="pinta brasero gimp vlc inkscape blender filezilla"
98 #usar o comando aptitude do Linux para tratar o loop de programas.
99 apt install aptitude -y
100 aptitude install -y $LIST_OF_APPS
101 ;;
102 4)
103 echo Voltando para o menu principal...
104 sleep $TIME
105 ;;
106 esac
107 #done
108 }
109 softwares
110 menuprincipal
111 ;;
112
113 4)
114 function sistema () {
115 VERSION=`cat /etc/os-release | grep -i ^PRETTY`
116 if [ -f /etc/os-release ]
117 then
118 echo "A versão do seu sistema é: $VERSION"
119 else
120 echo "Sistema não suportado"
121 fi
122 }
123 sistema
124 read -n 1 -p "<Enter> para menu principal"
125 menuprincipal
126 ;;
127
128
129 5)
130 function memory () {
131 TIME=2
132 MEMORY_FREE=`free -m | grep ^Mem | tr -s ' ' | cut -d ' ' -f 4`
133 MEMORY_TOTAL=`free -m | grep ^Mem | tr -s ' ' | cut -d ' ' -f 2`
134 MEMORY_USED=`free -m | grep ^Mem | tr -s ' ' | cut -d ' ' -f 3`
135 echo Verificando a memória do sistema...
136 echo "A memória livre é: $MEMORY_FREE"
137 sleep $TIME
138 echo "A memória total é: $MEMORY_TOTAL"
139 sleep $TIME
140 echo "A memória usada é: $MEMORY_USED"
141 }
142 memory
143 read -n 1 -p "<Enter> para menu principal"
144 menuprincipal
145 ;;
146
147 6)
148 function serial () {
149 SERIAL_NUMBER=`dmidecode -t 1 | grep -i serial`
150 echo $SERIAL_NUMBER
151 }
152 serial
153 read -n 1 -p "<Enter> para menu principal"
154 menuprincipal
155 ;;
156
157 7)
158 function ip () {
159 IP_SISTEMA=`hostname -I`
160 echo O IP do seu sistema é: $IP_SISTEMA
161 }
162 ip
163 read -n 1 -p "<Enter> para menu principal"
164 menuprincipal
165 ;;
166
167 0)
168 echo Saindo do sistema...
169 sleep 2
170 exit 0
171 ;;
172
173 *)
174 echo Opção inválida, tente novamente!
175 ;;
176 esac
177 }
178 menuprincipal
Remove Automaticamente os Kernel Antigos do GRUB
SlackelsPKG 1.0 - uma réplica de gerenciador de pacotes para o Slackware Current
Antivírus no Linux para usuários de domínio
Script contra ataques de Brutal Force por SSH.
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Como realizar um ataque de força bruta para desobrir senhas?
Como usar Gpaste no ambiente Cinnamon
Atualizando o Fedora 42 para 43
ERRO: LAZARUS 4.2 64 no Linux MINT não entra mais apos ajustar desktop... (0)
Pergunta: Meu teclado não está respondendo direito como e consertar? (2)
Secure boot, artigo interessante, nada técnico. (6)
SQLITE não quer funcionar no LINUX LMDE6 64 com Lazaruz 4.2 64bit (n... (0)









