LINUX.ORG.RU

Почему не доступен файл /sys/bus/usb/drivers/usb/bind (unbind) ?

 , ,


0

1

Мне нужно временно включить/выключить USB-устройство.
Я пытаюсь воспользоваться вот этим решением:

https://superuser.com/questions/1707773/how-to-turn-usb-connected-device-on-a...

Однако файлы /sys/bus/usb/drivers/usb/bind и unbind невозможно использовать, хотя они есть и запись в них разрешена. Вот пример:

root@comp:~# ls -la /sys/bus/usb/drivers/usb/bind
--w------- 1 root root 4096 авг 22 10:17 /sys/bus/usb/drivers/usb/bind

root@comp:~# echo '3-13' |tee /sys/bus/usb/drivers/usb/bind
3-13
tee: /sys/bus/usb/drivers/usb/bind: Нет такого устройства

Вопрос: почему так? Что блокирует возможность записи в эти файлы?


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

★★★★★
Ответ на: комментарий от u5er

Что-то мне подсказывает, что смотреть надо не выхлоп lsusb, а содержимое каталогов /sys/bus/usb/drivers/usb/usb*. Там есть эти устройства и у меня на них бинд и анбинд проходит. Причём, там цифры не совпадают с выхлопом lsusb.

u5er ★★
()

Мне нужно временно включить/выключить USB-устройство.

Если речь про то чтоб спрятать его от программ то может быть. Если ты хочешь ему питанием управлять то это нельзя. В инете много где размещена эта дезынформация про то что можно выключать питание через /sys но это всё враньё. Отключение 5В питания на usb-контроллере на материнке не предусмотрено в железе. На внешних usb-хабах может быть но способ всё равно другой.

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

Ты смотришь драйвер на всю шину. Ищи драйвер конкретного устройства в /sys/bus/usb/drivers/.

Например,

# ls /sys/bus/usb/drivers/ftdi_sio
1-2:1.0  bind  module  uevent  unbind
# echo 1-2:1.0 > /sys/bus/usb/drivers/ftdi_sio/unbind
anatole
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.