-
Notifications
You must be signed in to change notification settings - Fork 0
/
GerenciadorDeDispositivo.sh
executable file
·151 lines (135 loc) · 3.56 KB
/
GerenciadorDeDispositivo.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
#!/bin/bash
###########################################################
# Projeto Anonymous
# Módulo responsável pelo gerenciamento de Dispositivos
# Criadores: Alana; Daniel; Fernando; Francisco; Luiz Henrique; Vanderlei.
###########################################################
# Função Menu responsável pelas rotinas principais deste Módulo.
MENU(){
SELECIONE=$( dialog \
--stdout \
--nocancel \
--backtitle "ANONYMOUS" \
--title "Gerenciador de Dispositivos" \
--menu "Selecione uma opção" \
0 0 0 \
1 "Listar módulos carregados" \
2 "Listar módulos do mouse" \
3 "Mostrar mapa das dependências dos módulos" \
4 "Mostrar informações da cpu" \
5 "Informação da placa mãe" \
6 "Informação de espaço em disco" \
7 "Informações da Memória RAM" \
8 "Voltar" )
case $SELECIONE in
1) LSMC ;;
2) LSMPS ;;
3) MMDM ;;
4) MICPU ;;
5) IFDPM ;;
6) IFEED ;;
7) IFMR ;;
8) /home/vagrant/Projeto/./menu.sh ;;
*) PRESSIONE ;;
esac
}
PRESSIONE(){
dialog --msgbox "Pressione [enter] para finalizar" 0 0
dialog --msgbox "Volte Sempre" 0 0
clear
}
# Função responsável pela listagem dos módulos carregados no sistema.
LSMC(){
lsmod > listagem.txt
echo "30" | dialog --gauge "Carregando Aguarde .." 0 0 0
sleep 3
echo "100" | dialog --gauge "Carregando Aguarde .." 0 0 0
sleep 2
dialog \
--title "Módulos carregados no sistema" \
--textbox listagem.txt \
0 0
rm listagem.txt
MENU
}
# Função responsável por listar módulos psmouse.
LSMPS(){
modinfo psmouse > lista.txt
echo "30" | dialog --gauge "Carregando Aguarde .." 0 0 0
sleep 3
echo "100" | dialog --gauge "Carregando Aguarde .." 0 0 0
sleep 2
dialog \
--title "Módulo psmouse" \
--textbox lista.txt \
0 0
rm lista.txt
MENU
}
# Função responsável pela inserção de módulo no kernel.
INMK(){
INSER=$( dialog \
--stdout \
--title "Inserir módulo no kernel" \
--fselect / \
0 0 )
insmod $INSER
MENU
}
# Função responsável pela remoção de módulo no kernel.
RMMK(){
REMO=$( dialog \
--stdout \
--title "Remover módulo no kernel" \
--inputbox "Digite o nome do módulo" \
0 0 )
rmmod $REMO
MENU
}
# Função responsável por mostrar mapa de dependências de módulos.
MMDM(){
depmod --all --verbose >lis.txt
echo "10" | dialog --gauge "Carregando Aguarde..." 0 0 0
sleep 3
echo "30" | dialog --gauge "Carregando Aguarde..." 0 0 0
sleep 2
echo "70" | dialog --gauge "Carregando Aguarde..." 0 0 0
sleep 2
echo "100" | dialog --gauge "Carregando Aguarde..." 0 0 0
sleep 1
dialog \
--title "Mapa das dependências dos módulos" \
--textbox lis.txt \
0 0
rm lis.txt
MENU
}
# Função responsável por mostrar informações da cpu em utilização.
MICPU(){
lscpu >maquina.txt
dialog --title "Informações da CPU" --textbox maquina.txt 0 0
rm maquina.txt
MENU
}
# Função responsável por mostrar informações da placa mãe (motherboard) .
IFDPM(){
lspci >placamae.txt
dialog --title "Informações da Placa Mãe " --textbox placamae.txt 0 0
rm placamae.txt
MENU
}
# Função responsável por mostrar informações do espaço em disco utilizado.
IFEED(){
df -h >hd.txt
dialog --title "Espaço do Disco" --textbox hd.txt 0 0
rm hd.txt
MENU
}
# Função responsável por mostrar informações da memória RAM.
IFMR(){
cat /proc/meminfo > memoria.txt
dialog --title "Memoria Ram" --textbox memoria.txt 0 0
rm memoria.txt
MENU
}
MENU