Как настроить среду, которую bluepy может сканировать без sudo? - PullRequest
0 голосов
/ 17 января 2020

Я написал сценарий Python3, который сканирует устройства. Если они совпадают с «именем», я подключаюсь к ним и делаю некоторые интересные вещи. Сценарий построен поверх модуля bluepy.

Одна вещь, которая мне не нравится, это то, что мне нужно запустить сканирование устройства как sudo (например, sudo python3 getDev.py). Есть идеи, как сделать так, чтобы пользователь мог сканировать без прав root?

Думаю, мне нужно добавить локального пользователя в группу et c. Любые идеи приветствуются

1 Ответ

1 голос
/ 18 января 2020

Вкл. linux Стек протоколов Bluetooth требует специальных привилегий для взаимодействия с ним.

Эти привилегии реализуются через свойства, называемые возможностями, подробнее см. возможность man 7 .

Инструментом для назначения возможностей является программа setcap.

. В случае bluepy двоичный файл bluepy-helper взаимодействует со стеком протокола Bluetooth, поэтому найдите, где установлен пакет bluepy, и запустите:

sudo setcap 'cap_net_raw,cap_net_admin+eip' ${PY_SITE_PACKAGES_DIR}/bluepy/bluepy-helper

См. Также здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...