Пропадает USB ethernet после перезагрузки
-
Добрый.
@he11kern
Все же правильнее не ребутить.Как я вижу это дело:
Проверить "наличие" IP на свистке -> если нет, то откл. usb -> пауза -> вкл. usb -> пауза -> проверить "наличие" IP на свисткеИ так в цикле на N-е кол-во опыток. И только после делать ребут. Иначе можно железку ребутами "залюбить" (
Зы. Лучше в скрипте указывать или PATH=... или полные пути к командам usbconfig и др.
Зы2. Попробуйте http://wiki.lissyara.su/wiki/Usbconfig
- "Жесткий" вариант. Будет дергать питание usb, пока на свистке IP не появится.
Сперва узнаем ID usb хаба через usbconfig
#!/bin/sh IP_ADDR=$(/путь/usbconfig list | grep "AX88179" | cut -c5-7) while [ -z "$IP_ADDR" ] do /путь/usbconfig -d <ID-usb-хаба> set_config 255 /путь/sleep 5 /путь/usbconfig -d <ID-usb-хаба> set_config 0 /путь/sleep 5 IP_ADDR=$(/путь/usbconfig list | grep "AX88179" | cut -c5-7) done
или (в linux такое работает, как в bsd - я хз)
#!/bin/sh while ! /путь/usbconfig list | grep "AX88179" | cut -c5-7 do /путь/usbconfig -d <ID-usb-хаба> set_config 255 /путь/sleep 5 /путь/usbconfig -d <ID-usb-хаба> set_config 0 /путь/sleep 5 done
- Вариант на определенное кол-во попыток:
#!/bin/sh counter=0 while [ $counter -lt 5 ] do IP_ADDR=$(/путь/usbconfig list | grep "AX88179" | cut -c5-7) if [ -z "$IP_ADDR" ] then /путь/usbconfig -d <ID-usb-хаба> set_config 255 /путь/sleep 5 /путь/usbconfig -d <ID-usb-хаба> set_config 0 /путь/sleep 5 else exit 0 fi counter=$(expr $counter + 1) [ $counter -ge 5 ] && /путь/reboot done
За правильность синтаксиса не ручаюсь - проверяйте.
Зы. В IP_ADDR=... лучше awk пользовать https://www.lissyara.su/doc/programming/awk/ . Получается на 1 команду меньше:
IP_ADDR=$(/путь/usbconfig list | awk '/AX88179/ {print $<номер-позиции-с-IP-адресом>}')
Зы2. Может правильнее на usb повесить ЛАН, а встроенную сетевую пользовать как ВАН? Иначе, если у провайдера проблемы, то ваш роутер будет в "вечном" ребуте\передергивании usb из-за невозможности получить ip на свистке.
-
@werter said in Пропадает USB ethernet после перезагрузки:
ы2. Может правильнее на usb повесить ЛАН, а встроенную сетевую пользовать как ВАН? Иначе, если у провайдера проблемы, то ваш роутер будет в "вечном" ребуте\передергивании usb из-за невозможности получить ip на свистке.
Тaк и сделал, повесил на USB lan.
По вашему решению: Я не совсем уверен что вырубать хаб поможет делу, вручную я так и не смог заставить работать сеть через usbconfig, а вот перезагрузка решает проблему. Кончено я понимаю что это не продакшин решение, так как мой скрип зациклен. НО для теста этого хватило. Сейчас возникла другая проблема, насколько я понял через время отпадает интернет на роутере. Железка работает, индикация на USB карте работает, но вот инет становитсья не доступен (( пока дело не дошло до логов. Буду смотреть дальше...