Рейтинг:0

Удаленный доступ к `/dev/input` завершается с ошибкой разрешения

флаг es
zlg

Мне нужно удаленно открыть USB-устройство игрового контроллера (джойстик). Это устройство физически подключено к серверу и доступно локальному пользователю с разрешениями:

crw-rw-r--+ 1 корневой ввод 13, 0 ** /dev/input/js0

С использованием sshfs на стороне клиента я установил удаленный /dev/ввод/ в локальной папке /dev/ввод/удаленный/:

sudo sshfs -o allow_other server-usr@server_ip:/dev/input /dev/input/remote

Теперь я вижу устройство в смонтированной папке на клиенте:

crw-rw-r-- 1 root netdev 0, 0 ** /dev/input/remote/js0

Однако программы на стороне клиента (например, jstest) не удается открыть/использовать устройство с Доступ запрещен ошибка!

Как я могу найти доступ к удаленному джойстику на клиенте без проблем с разрешениями?

БОЛЬШЕ: пользователи с обеих сторон добавляются в ПРЕДОХРАНИТЕЛЬ и NETDEV группы. Кроме того, я добавил строку user_allow_other к /etc/fuse.conf что требуется для allow_other аргумент в команде SSHFS. Изменение chmod чтобы устройство 777 тоже не помогло. Нет успеха.

A.B avatar
флаг cl
A.B
Я сомневаюсь, что sshfs будет «пересылать» ioctl(), сделанный на устройствах, потому что SFTP определенно не будет иметь команду с именем IOCTL в своем API. Он работает с файловыми системами, а не с символьными устройствами. См. также https://cateee.net/lkddb/web-lkddb/CUSE.html, https://superuser.com/questions/209884/where-are-programs-that-use-cuse-character-in-user- пространство
A.B avatar
флаг cl
A.B
Это даст вам больший успех: https://www.kernel.org/doc/html/latest/usb/usbip_protocol.html.
zlg avatar
флаг es
zlg
@A.B Спасибо, я попробовал `usbip`, он работает на старых ядрах, которые моя машина не поддерживает. Я установил его через `linux-tools-generic` и следовал инструкциям здесь: https://developer.ridgerun.com/wiki/index.php?title=How_to_setup_and_use_USB/IP, мой клиент не может найти и смонтировать `usbip` и Модули `vhci-hcd`, использующие `sudo modprobe`. Я также пробовал `socat`+`ser2net` для передачи трафика. Однако джойстик не работает как обычное устройство `UART`, и трафик из канала декодируется некорректно.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.