LINUX.ORG.RU
ФорумAdmin

Скрипт bash для мониторинга сетевого соединения

 


0

2

Появилась необходимость написать скрипт (не спрашивайте зачем). Как я понимаю, он совсем несложный, но со скриптами я не силен. Нужно создать скрипт, который постоянно следит за вкл и откл сетевого соединения и выводит в эти моменты соответствующие строки типа: eth0 включен; eth0 выключен. Помогите пожалуйста

Перемещено hobbit из general

Тебе нужно анализировать вывод любой консольной утилиты управления сетью.

Текущая повсеместно используемая из состава iproute2 или устаревшая, но всё ещё могущая присутствовать ifconfig.

В общем, смотри вывод

ip l

Она же

ip link

Либо вывод

ifconfig -a

Находишь, что меняется в выводе в момент поднятия и опускания сетевого интерфейса.

Далее тебе нужна утилита grep для выбора нужной информации.

Ну и далее конструкция ‘if’, либо логическая операция «и» && и «или» ||.

Команда echo для вывода информации.

Цикл while.

Ну и ещё утилита sleep для ожидания, но можно без неё.

Смотришь man страницы по всему этому, ну либо примеры использования в интернет.

И далее пишешь скрипт на 5-10 строк.

Если что-то не будет получаться - присылай скрипт на форум.

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 1)

Домашку задали, однозначно. Такие скрипты: «выводит строки типа: eth0 включен; eth0 выключен» – бесполезны в реальной жизни.

Но я не жадный

ETH=enp3s0
ip a s $ETH | grep -q 'state UP' && echo "$ETH is UP" || echo "$ETH is DOWN"
futurama ★★★★★
()
Последнее исправление: futurama (всего исправлений: 1)
Ответ на: комментарий от kostik87

А убрать вывод grep?

«-q» ты не заметил?

Я и циклам должен обучать? Ну ладно

while :; do
   ip a s | grep -q ....
   sleep 0.99
done
futurama ★★★★★
()
Последнее исправление: futurama (всего исправлений: 1)
Ответ на: комментарий от anc

но не более того

А ты понимаешь что и зачем нужно ТСу?

ЕМНИП в витухе линк определяется по одной паре.

Ну-ну. У меня серверная сетевуха, которая поддерживает только 1000BASE-T, при воткнутом 100BASE-T даже светодиодом не мигала.

Tanger ★★★★★
()