访问 LED 子系统的系统组

访问 LED 子系统的系统组

是否有一个组可以添加用户,并授予其对 Linux 的 LED 子系统 (/sys/class/leds/) 进行写入的权限?

如果没有的话,是否可以创建这样的小组?

我不想以 sudo 身份运行我的应用程序。

编辑:我只想更改一些我真正需要写入权限的设备的权限,而不是整个 leds 子系统的权限。我发布了一个对我有用的解决方案。

答案1

我找到了一个适合我的问题的解决方案。我添加了一个 udev 规则,如中所述对类似问题的回答

首先我必须创建一个名为 leds 的新组。然后我在 /etc/udev/rules.d/10-buzzers.rules 中创建了 udev 规则(我自己创建了该文件,之前它并不存在)。

由于我只想使用 Playstation 2 蜂鸣器控制器的蜂鸣器 LED,因此我优化了规则以仅影响控制器的文件。该规则仅适用于与 KERNEL 字段中的内核信息匹配的设备。

该规则执行 chgrp 和 chmod,匹配的设备文件归 leds 组所有,并且拥有组具有写权限。

我的最后一条规则是:

SUBSYSTEM=="leds", KERNEL=="0003:054C:1000.[0-9]*::buzz[1-4]", ACTION=="add", RUN+="/bin/chgrp -R leds /sys%p", RUN+="/bin/chmod -R g=u /sys%p"

相关内容