FOWNER
должен сделать это. Если у вашего программного обеспечения нет проблем с выдачей ioctl для настройки ссылки (в этом случае вам, вероятно, понадобится либо SYS_ADMIN
или, либо другое TTY_CONFIG
), проблема заключается только в одном из прав доступа к файлу.
Тем не менее, FOWNER
это очень опасная способность выдавать. Все, что имеет такую возможность, может обойти ВСЕ проверки разрешений файловой системы.
В качестве альтернативы рассмотрите одно из следующих, если вы можете запустить этот контейнер под своим собственным пользователем:
- Добавьте этого пользователя к любой группе
/dev/ttyACM0
. Обычно эта группа будет называться что - то вродеtty
,serial
илиconsole
, хотя это может быть вместо этогоusb
илиhotplug
. Это самый простой вариант, но он лишь немного безопаснее, чем использование возможностей, поскольку эта группа обычно владеет узлами устройства для всех последовательных устройств и может дополнительно владеть всеми узлами виртуальных терминальных устройств. - Напишите правило udev, соответствующее соответствующему устройству, и добавьте к нему ACL, чтобы позволить пользователю, с которым работает контейнер, получить доступ к нему. Это наиболее безопасный доступный метод, поскольку он означает, что контейнер может получить доступ только к этому конкретному узлу устройства. Если у вас несколько устройств USB ACM, убедитесь, что они совпадают по комбинации различных идентификаторов оборудования, поскольку порядок перечисления USB-устройств нестабилен и обычно меняется от одной загрузки к другой.