Как я могу записать время в следующем формате [dd-mm-yy/hh:mm:ss]
в файле, когда интерфейс был поднят или вниз? Я хочу хранить данные как это,
[12-12-12/10:21:00] interface UP
[14-12-12/19:11:14] interface DOWN
Можно получить доступ к связанным с интерфейсом журналам с помощью dmesg
от терминала. Но журналы больше не доступны после перезагрузки системы. Я даю Вам сценарий, который сохранил бы интерфейс,/вниз входят в систему ~/interface_up_down.log
. Необходимо использовать это, прежде чем Вы перезагрузите или завершите работу своей системы. Сохраните следующий сценарий как 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
Дайте исполнимое разрешение сценария от терминального использования
chmod +x /path/to/save_interface_log.sh
Запускать скрипт для eth0
/path/to/save_interface_log.sh eth0
Когда Вы запустите скрипт, он сохранит интерфейс/вниз информация в файл в Вашем нужном формате как ниже. Я использовал eth0
можно изменить любой другой интерфейс.
[14-12-13/19:08:15] eth0 DOWN
[14-12-13/19:08:28] eth0 UP