como capturar por script bash o adaptador de rede com defeito (onboard)

0

queremos desenvolver um script bash simples que notifique sobre status incorreto no adaptador de rede

primeiro o comando follwing imprime o status básico:

ethtool -S eno1543398 | grep err
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 0
          hdr err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0

para identificar se há problema ou não, podemos usar essa sintaxe

ethtool -S eno1543398 | egrep "err|fail" | awk '{print $NF}' | sort | uniq | wc -l

se conseguirmos 1 então a rede neste adaptador está ok

se tivermos diff de "1", significa que temos problemas

minha suposição está na direção certa?

exemplo de problemas no adaptador de rede

ethtool -S eno1543398 | grep err
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 13
          hdr err: 0
       pkts tx err: 0
          hdr err: 0
       pkts tx err: 0
          hdr err: 87
       pkts tx err: 0
          hdr err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0
       pkts rx err: 0
          err: 0

depois nós pegamos

ethtool -S eno1543398 | egrep "err|fail" | awk '{print $NF}' | sort | uniq | wc -l

neste caso, obteremos o número 3

    
por yael 26.04.2018 / 14:27

0 respostas