Nano Hash - криптовалюты, майнинг, программирование

Жесткое повторное подключение USB-устройства из bash

У меня есть много USB-модемов, подключенных к серверу. Иногда USB не отвечает на программное обеспечение, такое как gnokii o gammu (мне нужно прочитать IMEI), и нам нужно отключить устройство и снова подключить, и проблема решена.

Мне нужен способ сделать это из bash. Я знаю, что невозможно отключение с отключением энергии. Есть идеи?

Я пытаюсь с:

Оба решения отсоединяют устройство и снова подключают, но проблема, когда я запрашиваю данные, по-прежнему не работает.

Решение, передающее эти данные, для меня лучше :)

  • /dev/ttyUSB0
  • /dev/шина/usb/001/001
04.08.2017

  • Вероятно, это зависит от того, где проблема. Если проблема на стороне хоста, цикл отключения-подключения фактически запускает драйвер, и именно это возвращает его к работе. Вы можете сделать это, используя modprobe, если вы знаете соответствующего водителя. Если проблема на стороне устройства, цикл отключения-подключения отключает и включает питание устройства. Это можно сделать, добравшись до устройства внутри /sys/devices/pci0000:00/ и найдя устройство (возможно, используя dmesg), а затем используя его файл power/level, чтобы повернуть on и off. 04.08.2017

Ответы:


1

Возможно, вам придется отключить питание вашего USB-устройства, чтобы оно правильно сбрасывалось. Хотя стандарт USB предполагает, что концентраторы обеспечивают дистанционное переключение питания с помощью программного обеспечения, очень немногие концентраторы фактически реализуют эту функцию (что сокращает 1 дополнительный транзистор на порт). Попробуйте поискать USB-концентраторы с помощью PPPS, что означает переключение питания для каждого порта.

Это программное обеспечение uhubctl для Linux и MacOSX может управлять таким концентратором, и на странице перечислены некоторые совместимые концентраторы. Например, этот ответ службы поддержки от Plugable Technologies в декабре 2016 г. перечисляет два недорогих концентратора, которые они делают, которые вы можете найти, например, на Amazon.

05.08.2017
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..