你好,我已经使用 Linux 两年了,所以我对整个社区还是新手。如果这个问题很愚蠢和/或在错误的论坛中,请提前原谅我。
我有一台笔记本电脑,这台笔记本电脑是带有双显卡的 Optimus。我已经正确设置了 bumblebee,这使我能够正确使用独立显卡(至少我希望如此),但这导致了 xbacklight 无法调整亮度的问题。我查了一下,在github上发现了一个可以调节亮度的程序(brightlight v7)。但它需要 root 才能运行。我想在没有 root 的情况下运行这个程序。作者已经给出了关于如何做到这一点的声明,但我希望在我搞砸任何事情之前要求澄清和/或如何实现这一点。
如果有人想知道我使用 Arch 和 i3-gaps
作者引言:
“该程序旨在安装 setuid root,因为 sysfs 中的文件默认由用户和组 root 所有;但是,也可以使用以下命令在启动时将 sysfs 文件的权限更改为不同的用户和组:在某些 cron 实现中发现的“anacron”功能,使用 systemd-tmpfiles 甚至在“/etc/rc.local”中(如果有适当的功能可用),这将允许普通用户(可能是特殊组的成员)更改背光亮度无需 suid 二进制文件。”
https://github.com/ Multiplexd/brightlight
~谢谢你的时间,我尽量不寻求帮助,但我只是担心把事情搞砸。
编辑:我能够解决我的笔记本电脑使用 intel_backlight 的问题,但是您可以编写一个 systemd 服务,以允许该程序通过允许写入和附加访问来修改系统文件。
只需将 intel_backlight 更改为您使用的任何内容即可。
我将这个文件命名为 Brightlight.service,位于 /etc/systemd/system/
[Unit]
Description Hopefully will be a solution for you reading.
Before nodered.service
[Service]
Type oneshot
User root
ExecStart=/bin/bash -c "/bin/chmod a+w /sys/class/backlight/intel_backlight/*"
[Install]
WantedBy=multi-user.target
答案1
我不确定,但我认为该程序已在您的笔记本电脑中创建了一个名为该程序的组。在这种情况下,您需要将您的用户添加到该组并打开一个新的 shell。试试这个:使用 root 权限:
# gpasswd -a <your_user> <program_name>
或使用 sudo:
$ sudo gpasswd -a <your_user> <program_name>
希望对你有帮助!