华为KPL-W0X笔记本Ubuntu 22.04.2 LTS系统下修改只读bl_power文件开启键盘背光的方法咨询
华为KPL-W0X笔记本Ubuntu 22.04.2 LTS系统下修改只读bl_power文件开启键盘背光的方法咨询
兄弟,必须给你点个赞!把问题细节写得这么清楚,绝对能帮到后面跟你一样踩坑的人,先给你捋捋怎么解决这个键盘背光的问题:
首先得说,/sys/class/下的这些文件默认都是普通用户只读的,必须用root权限才能修改,而且先纠正一个可能的小误区:sysfs里的bl_power通常0代表背光开启状态,1是关闭,不过既然你觉得改1能解决,咱们先按你的思路来测试,不行再调整。
第一步:临时修改测试(重启后失效,先验证是否有用)
打开终端,输入这条命令(输入后会要求你输用户密码):
echo 1 | sudo tee /sys/class/backlight/amdgpu_bl0/bl_power
回车后看看键盘背光有没有亮起来。如果没反应,大概率是你找错节点了!毕竟你也说这个文件名误导人——amdgpu_bl0一般是屏幕背光的控制节点,不是键盘的。
这时候你去/sys/class/leds/目录下找找键盘背光的专属节点:
ls /sys/class/leds/
里面如果有类似platform::kbd_backlight或者带huawei标识的文件夹,那才是键盘背光的控制入口。进入对应的文件夹,你会看到brightness、max_brightness这些文件,试试调整亮度值:
# 先查看最大亮度值 cat /sys/class/leds/[找到的键盘背光节点]/max_brightness # 比如输出是100,输入一个中间值测试 echo 50 | sudo tee /sys/class/leds/[找到的键盘背光节点]/brightness
这时候再看看键盘背光有没有亮~
第二步:让修改重启后依然生效
如果上面的临时修改有用,那得设置持久化,不然重启就回到原样了。推荐用systemd服务来实现:
- 创建一个服务配置文件:
sudo nano /etc/systemd/system/keyboard-backlight.service
- 粘贴以下内容(注意把路径换成你刚才测试有效的那个节点路径):
[Unit] Description=Set Keyboard Backlight State After=multi-user.target [Service] Type=oneshot # 如果是bl_power的路径就写这个: ExecStart=/usr/bin/echo 1 > /sys/class/backlight/amdgpu_bl0/bl_power # 如果是leds下的键盘背光节点,就换成这个(示例): # ExecStart=/usr/bin/echo 50 > /sys/class/leds/platform::kbd_backlight/brightness [Install] WantedBy=multi-user.target
- 保存退出nano:按
Ctrl+O回车确认保存,再按Ctrl+X退出。 - 启用并启动这个服务:
sudo systemctl enable --now keyboard-backlight.service
这样下次重启系统,键盘背光就会自动生效了。
另外补充一句,如果想用Fn键调节亮度,你可以去系统设置的键盘快捷键里看看有没有对应的选项,或者装个acpi-support包辅助识别Fn键事件,不过先把背光点亮是第一步~
备注:内容来源于stack exchange,提问作者H8rs..
相关产品推荐
相关产品推荐

