Я был бы признателен, ребята, если бы вы помогли мне отключить автоматическую приостановку USB-устройств в Ubuntu 16.04 на ноутбуке.
USB - это внешнее аудиоустройство, для того чтобы USB-устройство всегда оставалось включенным, я обычно это делаю:
echo "on" | sudo tee /sys/bus/usb/devices/1-1/power/control
Оказалось, что для постоянного исправления будет использоваться udev для установки питания USB-устройства / управляющий атрибут. Я создал новое правило и указал, что оно работает путем записи в файл:
ACTION=="add", SUBSYSTEM=="usb", RUN+="/bin/sh -c '/bin/echo auto > /home/manar/textfile'" ,ATTR{idProduct}=="0xAAAA", ATTR{idVendor}=="0xBBBB"
Затем я переписал приведенное ниже правило, чтобы установить атрибут power / control:
ACTION=="add", SUBSYSTEM=="usb" ,ATTR{idProduct}=="0xAAAA", ATTR{idVendor}=="0xBBBB", TEST=="power/control" ATTR{power/control}="on"
К сожалению, Похоже, что правило не выполняет свою работу, потому что значение в / sys / bus / usb / devices / 1-1 / power / control равно auto, и устройство фактически выключается при простое.
Может кто-нибудь сказать мне, что я пропустил?
Большое спасибо.
Отредактировано:
Тест udev указал на проблему с правами доступа при установке соответствующего атрибута. Теперь я предполагаю, что использование udev в arch несколько отличается от Ubuntu.
Наконец-то я нашел способ обойти USB этого парня https://askubuntu.com/a/748864/310166
В openSUSE я использую следующее правило udev (/etc/udev/rules.d/50-usb-power-always-on.rules
):
ACTION=="add", SUBSYSTEM=="usb", TEST=="power/control", ATTR{power/control}="on"
ACTION=="add", SUBSYSTEM=="usb", TEST=="power/autosuspend" ATTR{power/autosuspend}="0"
ACTION=="add", SUBSYSTEM=="usb", TEST=="power/autosuspend_delay_ms" ATTR{power/autosuspend_delay_ms}="0"
Затем выполните:
udevadm control --reload
systemctl daemon-reload