Постоянная ссылка на USB-модем во FreeBSD

Автор: | 12.09.2016

К серверу системы мониторинга Zabbix, подключен USB модем для отсылки SMS-сообщений посредством smsd.
Модем, в силу некоторых обстоятельств, может быть переподключен к серверу и ему может назачиться новое имя последовательного устройства, в результате чего smsd отвалится.
Чтобы после переподключения последовательный порт модема назывался всегда одинаково, нужно знать принцип именования последовательных устройств и реагировать на их подключение/отключение.

Имя последовательного порта можно узнать через sysctl:

ttyname как раз и указывает на имя устройства, т.е в данном случае оно будет /dev/ttyU0. Также можно распарсить dev.u3g.0.%pnpinfo и получить ttyname от туда.

Имя получили, теперь создадим ссылку при помощи /etc/devd. В /etc/devd.conf прописываем:

Здесь при подключении модема удаляем старую ссылку на устройство, грепаем sysctl по вендору и PID, выделяем имя устройства, создаем софтлинк на модем и перезагружаем devd.

Всех с праздником!

P.S.: Те люди, чьим родным языком является язык sed, скажут, что можно всё сделать одной строкой и будут в чем-то правы, но так тоже не плохо.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *