Limpando conexão ociosa
Publicado por Guilherme Moura de Souza (última atualização em 16/09/2010)
[ Hits: 7.668 ]
Este script tem o intuito de otimizar os servidores, derrubando aquelas conexões que teoricamente estão atoa.
Espero que seja útil, críticas e sugestões são sempre bem vindas.
#!/bin/bash ################################################### # # # Script para matar conexoes ociosas # # # # Nome: LIMPANDO_CONEXAO Versao 0.2 # # by Guilherme Moura de Souza # # Colaboradores: Tulio.Hoffimann # # stack_of # # Diede # # # # Necessario criar o diretorio /u/log # # # # Recomendo rodar atraves do cron do root da # # seguinte forma: */1 * * * * "caminho do script" # # # ################################################### LOG=/u/logs/"LIM_CON-"`date +%m%d` LIMPANDO_CONEXAO() { # Digite na frente do "=" o limete de tempo que sera permitido que a # conexao fique ociosa "EM MINUTOS" LIMITE=30 # Identificando o numero de conexoes conexoes=`w -h | grep -c " "` for L in $(seq 1 $conexoes) do #Definindo o PTS/* ou TTY* PTSocioso=`w -h | grep -m $L " " | tail -1 | tr -s " " | cut -d " " -f2` #Buscando o tempo OCIOSO Tempocioso=`w -h | grep -m $L " " | tail -1 | tr -s " " | cut -d " " -f5` #Verificando se alguma conexao esta acima do limite H1=$(echo $Tempocioso | grep "m") S=$(echo $Tempocioso | grep "s") if [ -z $H1 ]; then if [ -z $S ]; then M=$(echo $Tempocioso | cut -d ":" -f1) if [ $M -gt $LIMITE ]; then skill -kill -v $PTSocioso >> $LOG touch /u/COMECA_DE_NOVO fi fi; else H2=$(echo $H1 | cut -d ":" -f1) H3=$(echo $H1 | cut -d ":" -f2 | cut -d "m" -f1) H=`awk 'BEGIN {print '$H2'*60+'$H3'}'` if [ $H -gt $LIMITE ]; then skill -kill -v $PTSocioso >> $LOG touch /u/COMECA_DE_NOVO fi fi done if [ -e /u/COMECA_DE_NOVO ] then rm -f /u/COMECA_DE_NOVO LIMPANDO_CONEXAO fi } # Iniciando Rotina e gerando LOGS echo " ==================================== " >> $LOG echo " Inicio da Varredura as "`date +%H:%M:%S` >> $LOG rm -f /u/COMECA_DE_NOVO LIMPANDO_CONEXAO echo " Fim da Varredura as "`date +%H:%M:%S` >> $LOG
Instalação do Layer7 e compilação do kernel (automático)
Autenticação automática no Speedy Home
Script para gravar 2 (ou 4) CDs simultaneamente
Fluxbox: Wallpapers aleatórios
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
SysAdmin ou DevOps: Qual curso inicial pra essa área? (0)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código (3)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta