Monitorando memória RAM
Publicado por Sandro Marcell 17/06/2008
[ Hits: 13.695 ]
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
Prova LPI em shell script - com contador de acertos
Criar pacote Debian do thunderbird de br.mozdev.org
Remover/Exibir Arquivo/Diretório de uma estrutura de diretórios
Alguns riffs do Rock tocados com o comando beep
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
Sinto uma leve lentidão ao arrastar, miniminizar e restauras as janela... (3)
Alguém já usou o framework Avalonia para desenvolver interfaces de usu... (4)
Ajuda Pra Melhoria do NFTABLES. (8)
Pastas da raiz foram para a área de trabalho [RESOLVIDO] (7)