Данный модем был подключен к серверу с ОС Oracle Linux Server release 6.2 с целью рассылки SMS оповещений от системы мониторинга Zabbix через SMS Server Tools. К сожалению, это решение из-за частых отказов USB модема Huawei Technologies E353 не может пока претендовать на роль гарантированного оповещателя, но тем не менее можно постараться приладить костыли из самого Zabbix и делать реинициализацию им.
Примерно, механизм ставящий в ступор устройство одинаков и для Siemens M35i - это происходит при получении серии входящих SMS сообщений, но если для Siemens достаточно зайти на него терминалом и почистить, то для Huawei приходится вынимать его из порта USB, что является затратным по времени, особенно если серверная находится далеко.
Для решения данной проблемы было принято посылать адресный сигнал RESET по USB шине к устройству, что равнозначно его физическом удалению и повторной установке в тот же самый USB порт.
Но одной переиницализации по USB недостаточно, необходимо провести выгрузку из памяти SMS Server Tools, затем выгрузить драйвер модема из kernel окружения, загрузить обратно и запустить сервер SMS.
Приведу скрипт для автоматизированной перезагрузки USB модема:
Краткие комментарии к скрипту:
Как и обещал - привожу код программы usbreset:
Сборка стандартно, командой:
Мои настройки smsd.conf:
Примерно, механизм ставящий в ступор устройство одинаков и для Siemens M35i - это происходит при получении серии входящих SMS сообщений, но если для Siemens достаточно зайти на него терминалом и почистить, то для Huawei приходится вынимать его из порта USB, что является затратным по времени, особенно если серверная находится далеко.
Для решения данной проблемы было принято посылать адресный сигнал RESET по USB шине к устройству, что равнозначно его физическом удалению и повторной установке в тот же самый USB порт.
Но одной переиницализации по USB недостаточно, необходимо провести выгрузку из памяти SMS Server Tools, затем выгрузить драйвер модема из kernel окружения, загрузить обратно и запустить сервер SMS.
Приведу скрипт для автоматизированной перезагрузки USB модема:
Краткие комментарии к скрипту:
- Для начала, надо в выводе /usr/sbin/lsusb определить ID установленного модема, точнее пару IdVendor и IdProduct.
Bus 002 Device 003: ID 12d1:1506 Huawei Technologies Co., Ltd. E398 LTE/UMTS/GSM Modem/NetworkcardЭти значения прописать вместо текущих 12d1:1506 в данном скрипте. - Собрать программу usbreset, код приведен будет в конце данной статьи, оригинал откуда она была взята тут.
Как и обещал - привожу код программы usbreset:
Сборка стандартно, командой:
Например:
Комментариев нет:
Отправить комментарий