Monitorando memória RAM
Publicado por Sandro Marcell 17/06/2008
[ Hits: 13.827 ]
Homepage: http://sanmarcell.wordpress.com
Simples script que informa ao usuário sobre o alto consumo de memória RAM pelo sistema.
Para executá-lo, basta rodá-lo em segundo-plano e quando o script detectar o alto consumo de RAM, uma janela se abrirá e informará o usuário a respeito.
Para mais detalhes, leia as informações no cabeçalho do script.
Screen que mostra o script em execução:
http://www.vivaolinux.com.br/screenshots/verScreenshot.php?codigo=12320
#!/bin/bash --norc
#
# Simples aviso sobre o alto consumo de memoria RAM.
# Sandro Marcell (sandro_marcell@yahoo.com.br)
#
# Obs.:
# - Este script e executavel somente em modo grafico;
# - Para executa-lo, basta inicializa-lo juntamente com o X ou
# simplesmente executa-lo em segundo-plano;
# - Ao pressionar o botao 'Fechar' da janela que aparecera, o script
# sera finalizado por completo. Para reativa-lo reinicie a sessao ou
# execute-o novamente em segundo-plano.
# Sinal 'kill' recebido:
trap "break 2 ; exit" 1 2 3 15
# Executavel somente em modo grafico:
[[ -z $DISPLAY ]] && echo "Script executavel somente em modo grafico." && exit 1
# Porcentagem maxima de uso da memoria, antes de emitir aviso:
pct=80
# Tempo (em segundos) para checagem do uso da memoria:
tcm=30
# Tempo (em segundos) de intervalo entre as emissoes dos avisos:
int=10
# Tempo (em segundos) de duracao do aviso na tela:
dur=8
# Determinando valores
_Valores_() {
# Quantidade de memoria RAM no sistema:
local -i tram=$(awk '{print $2}' <(sed -u '2!d' <(free -m)))
# Quantidade de memoria utilizada pelo sistema:
local -i ramu=$(awk '{print $3}' <(sed -u '2!d' <(free -m)))
# Porcentagem de memoria utilizada:
pmu=$((ramu * 100 / tram))
return $pmu
}
# 1 - Loop de checagem de uso da memoria:
while sleep ${tcm}s
do
# 2 - Loop de teste e execucao:
while :
do
# Chamando funcao:
_Valores_
# Comparando valores:
if [ $pmu -gt $pct ]
then
# Aviso ao usuario:
xmessage -buttons Ok:0,Fechar:2 \
-title "Aviso" -timeout $dur -center \
"Atenção: Há pouca memória RAM disponível no momento.
Faça 'top -u \$USER' e finalize os processos desnecessários
para poder liberar mais memória e evitar lentidão no sistema."
# Botao 'Fechar' foi pressionado?
[[ $? == 2 ]] && break 2
# Intervalo para emissao do proximo aviso:
sleep ${int}s
continue
else
# Refazendo checagem:
break
fi
done
done
exit
# Fim
Instalação do aplicativo Franz
Fazer o download de um website completo
Colocar palavras em maiúsculas
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
É normal não gostar de KDE? (8)
O programa assinador digital (0)
dpkg: erro: gatilho de arquivo duplicado chamado pelo arquivo de nome (6)









