Monitoração do CBQ
Publicado por Jose Geraldo 08/09/2004
[ Hits: 9.902 ]
Pessoal
Escrevi este script para monitoração do CBQ de uma maneira mais elegante do que aquele cbq stats.
O script processa a saída do comando "cbq stats" e o traduz em uma linha por regra, mostrando a taxa em kbps efetiva, em relação à ultima execução do mesmo.
Como é ainda uma versão alfa, podem ocorrer erros na primeira execução, quando o arquivo temporário ainda não existir.
Recomendo que o mesmo somente seja executado pelo root, pois o arquivo temporário está com nome fixo.
# Script para verificar os status do CBQ de maneira mais # estatistica que o cbq stats do cbq.init # # JGeraldo 08/09/2004 - v0.1 - Alpha end_date=`date "+%s"` if [ ! -f /tmp/cbqstat.ant ] then echo "ULT_STR:`date`" > /tmp/cbqstat.ant echo "ULT_NUM:$end_date" >> /tmp/cbqstat.ant echo "ULT_STR:`date`" > /tmp/cbqstat.atu echo "ULT_NUM:$end_date" >> /tmp/cbqstat.atu stat=n else echo "ULT_STR:`date`" > /tmp/cbqstat.atu echo "ULT_NUM:$end_date" >> /tmp/cbqstat.atu stat=s fi ult_str=`cat /tmp/cbqstat.ant|grep ULT_STR|cut -c9-80` ult_num=`cat /tmp/cbqstat.ant|grep ULT_NUM|cut -d: -f2` seconds=`expr $end_date - $ult_num` cbq stats | while read p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 #cat x | while read p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 do #echo "p0:$p0 p1:$p1 p2:$p2 p3:$p3 p4:$p4 p5:$p5 p6:$p6 p7:$p7 p8:$p8" if [ "$p0" = "###" ] then iface=$p1 fi if [ "$p0" = "qdisc" ] then rule=$p2 rate=$p4 burst=$p6 laten=$p8 fi if [ "$p0" = "Sent" ] then bytes=$p1 pkts=$p3 echo "RULE:$iface:$rule:$rate:$burst:$laten:$bytes:$pkts">> /tmp/cbqstat.atu bytes_ant=`cat /tmp/cbqstat.ant|grep "RULE:$iface:$rule"|cut -d: -f9` tbytes=`expr $bytes - $bytes_ant` if [ $seconds -gt 0 ] then tbits=`expr $tbytes \* 8` kbps=`expr $tbits / $seconds / 1024` fi siface=`echo $iface | cut -d: -f1` srule=`echo $rule | cut -d: -f1` printf "%s, rule %3s: %4d kbps in %d seconds\n" $siface $srule $kbps $seconds fi done if [ $1"Q" != "nQ" ] then mv -f /tmp/cbqstat.atu /tmp/cbqstat.ant fi
Fluxbox: Wallpapers aleatórios
Editor de configurações para Tint2
Script em shell do artigo: Implementando a segurança em servicos de acesso remoto
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
Programa fora de escala na tela do pc (22)
Problemas com Driver NVIDIA (1)
Fedora KDE plasma 42 X Módulo de segurança BB (Warsaw-2) (1)









