普通用户如何解除/绑定 USB 设备?

普通用户如何解除/绑定 USB 设备?

我有一个不稳定的 USB 设备,需要每五分钟重置一次。到目前为止,我手动拔掉了它,这相当烦人。我发现可以通过解除绑定/重新绑定来重新激活它,这样就可以用这个脚本来拯救它:(我可以从 lsusb -t 解析路径)

echo '1-1' > /sys/bus/usb/drivers/usb/unbind
echo '1-1' > /sys/bus/usb/drivers/usb/bind

此脚本只能由 root 执行,但我想将调用集成到我的应用程序(C++ 二进制文件)中。以 su 身份运行所有内容听起来有点过头了,我希望有类似小组的组织具有这种能力。

答案1

要通过 sudo 命令授予用户“foo”root 权限,请编辑 /etc/sudoers 并添加以下行:

foo   ALL = NOPASSWD: ALL

有关更多信息,请参阅 sudo(8) 和 sudoers(5)。

对于绑定/取消绑定,您可以使用以下命令:

echo -n devicePath > /sys/bus/usb/drivers/usb/unbind
echo -n devicePath > /sys/bus/usb/drivers/usb/bind

相关内容