hora de abrir ou baixar uma interface

0

Como posso escrever a hora, no seguinte formato [dd-mm-yy/hh:mm:ss] em um arquivo quando uma interface foi ativada ou desativada? Eu quero armazenar dados como este,

[12-12-12/10:21:00] interface UP  
[14-12-12/19:11:14] interface DOWN 
    
por laura 14.12.2013 / 13:57

1 resposta

2

Pode-se acessar logs relacionados à interface usando o terminal dmesg from. Mas os logs não estão mais disponíveis depois que você reinicializar o sistema. Eu estou dando a você um script que armazenaria o log up / down da interface em ~/interface_up_down.log . Você precisa usar isso antes de reiniciar ou desligar o sistema. Salve o seguinte script como save_interface_log.sh

#!/bin/bash

dmesg -T | grep "link becomes ready" | grep $1 | awk -F "]" '{print $1}' | awk '{print $4}'| while read var1;
do
    echo -e "[$(date +%d-%m-%y)/$var1]\t$1\tUP" >> ~/interface_up_down.log
done
dmesg -T | grep "Link is down" | grep $1 | awk -F "]" '{print $1}' | awk '{print $4}'| while read var2;
do
    echo -e "[$(date +%d-%m-%y)/$var2]\t$1\tDOWN" >> ~/interface_up_down.log
done

Forneça a permissão executável do script a partir do terminal usando

chmod +x /path/to/save_interface_log.sh

Para executar o script para eth0

/path/to/save_interface_log.sh eth0

Quando você executar o script, ele salvará as informações de interface para cima / para baixo no arquivo no formato desejado, conforme abaixo. Eu usei eth0 você pode modificar qualquer outra interface.

[14-12-13/19:08:15]    eth0    DOWN
[14-12-13/19:08:28]    eth0    UP
    
por souravc 14.12.2013 / 15:47