Bluez bluetoothd 需要 root 才能与其交互的所有进程

Bluez bluetoothd 需要 root 才能与其交互的所有进程

我已将 Ubuntu xenail box (16.04) 上的 bluez 安装升级到版本 5.41。我正在尝试使用蓝牙低功耗硬件进行一些测试,因此我在命令行中使用以下命令来启用实验性 GATT 接口。

sudo bluetoothd -E

我的问题是,升级后,我现在必须以 root 身份运行才能使用 bluetoothctl 实用程序或与 dbus 接口交互(通过 d-feet)。如果我尝试在 bluetoothctl 中使用(列表显示或开机)命令,我会被告知有“没有可用的默认控制器”,如果我尝试通过 /org/bluez/hci0 上的 d-feet 发出启动发现命令,我会得到一个org.freedesktop.Dbus.Error.AccessDenied错误。我用默认安装没有这个问题。

我没有找到太多 bluez 的安装说明,所以我只是按照标准方式进行(通过下面的命令)。我想我还必须建立一个到蓝牙的符号链接,这样它就在我的路径上。

./configure
make
sudo make install

所以我想知道如何调整 bluetoothd 的权限,以便我可以从不以 root 身份运行的进程访问蓝牙 api。

谢谢

相关内容