Linux
树莓派3B 采用Samba + Cockpit搭建NAS
Linux 修改开机启动 boot splash logos
Linux 下将 .po 文件编译成 .mo 文件
Python 使用 gettext 模块实现国际化
XFCE 桌面优化配置
香橙派3B 使用 WiringOP 读取 MPU6050
香橙派4 LTS 安装 WiringPi
Linux 图形界面切换到 FB 界面
校表仪 tg-timer 算法笔记
Linux 安装 EtherCat Igh
EetherCat Igh 常用指令
树莓派镜像 DIY 制作
树莓派5B 安装64位实时系统 preempt RT 补丁
linux 的 lightdm 桌面管理器下隐藏光标(鼠标)
Linux 上使用 MPD (Music Player Daemon)
Linux 自动化交互式命令行工具 —— expect
Linux GTK 界面开发
Debian系统中修改主机名
使用Python + GTK3.0 开发嵌入式GUI
Raspberry Pi 5修改系统内存分页大小解决安装esp-matter 出现的<jemalloc>: Unsupported systeom page size 错误
树莓派 linux 安装和使用clash 做VPN
树莓派自动挂载硬盘
非控制台或ssh登录用户尝试启动Xorg图形服务器
XFCE4 电源管理器配置管理
Linux PulseAudio 声卡配置和检测
IBUS修改输入法和设置切换快捷键
在 Moode Audio 中实现开机自动启动 `startx`
crontab 任务
树莓派外设耗电检测
linux 终端自动登录
linux创建新用户
linux service通过xinit启动GTK应用程序
Linux 非桌面的图形环境安装和配置
香橙派3b板载音频输出没有声音调试
使用 udev 规则修改权限实现屏幕亮度调节
Linux udev 介绍
鲁班猫4 ubuntu22.04 屏幕背光 udev 自动配置化
ubuntu22.04 动态壁纸配置
使用 udisksctl 的可靠 USB 自动挂载方案(基于 systemd-run)
通过udev规则U盘自动挂载
OpenWRT 磊科N60pro路由器刷机
本文档使用 MrDoc 发布
-
+
首页
使用 udev 规则修改权限实现屏幕亮度调节
在 Ubuntu 中,普通用户无法直接修改 /sys/class/backlight/backlight1/brightness 文件是因为权限问题。以下是几种安全可靠的解决方案: 方法一:使用 udev 规则修改权限(推荐) 这是最安全、最标准的解决方案: 创建 udev 规则文件: sudo nano /etc/udev/rules.d/90-backlight.rules 添加以下内容(根据你的实际设备名修改 backlight1): # 允许 video 组读写背光设备 ACTION"add", SUBSYSTEM"backlight", KERNEL=="backlight1", RUN+="/bin/chgrp video /sys/class/backlight/%k/brightness" ACTION"add", SUBSYSTEM"backlight", KERNEL=="backlight1", RUN+="/bin/chmod g+w /sys/class/backlight/%k/brightness" 重新加载 udev 规则: sudo udevadm control --reload-rules sudo udevadm trigger 将用户加入 video 组: sudo usermod -aG video $USER 重启系统使更改生效。 方法二:配置 sudo 权限(无需密码) 适用于临时或脚本操作: 创建亮度调节脚本: sudo nano /usr/local/bin/set-brightness 添加内容: #!/bin/bash echo $1 | sudo tee /sys/class/backlight/backlight1/brightness 赋予执行权限: sudo chmod +x /usr/local/bin/set-brightness 配置 sudoers 文件: sudo visudo 在文件末尾添加: # 允许当前用户无密码执行该脚本 $USER ALL=(root) NOPASSWD: /usr/local/bin/set-brightness 使用脚本调节亮度: set-brightness 500 # 将亮度设为500(值参考max_brightness) 方法三:ACPI 事件绑定(适合物理按键) 如果使用笔记本功能键调节亮度: 创建按键处理脚本: sudo nano /etc/acpi/backlight.sh 内容: #!/bin/bash max=$(cat /sys/class/backlight/backlight1/max_brightness) cur=$(cat /sys/class/backlight/backlight1/brightness) case $1 in up) new=$((cur + max/10)) ;; down) new=$((cur - max/10)) ;; esac echo $(( new > max ? max : new < 0 ? 0 : new )) | sudo tee /sys/class/backlight/backlight1/brightness 配置 ACPI 事件: sudo nano /etc/acpi/events/backlight 内容: event=video/brightness* action=/etc/acpi/backlight.sh %e 重启 acpid 服务: sudo systemctl restart acpid 验证操作: 查看当前亮度值 cat /sys/class/backlight/backlight1/brightness 测试设置亮度(使用方法二脚本示例) set-brightness 300 注意事项: 设备名称确认: ls /sys/class/backlight/ # 确认正确的设备名(如 intel_backlight) 替换规则/脚本中的 backlight1 为实际名称 亮度范围: cat /sys/class/backlight/backlight1/max_brightness 设置的值需在 0 到最大值之间 权限检查: ls -l /sys/class/backlight/backlight1/brightness 成功配置后应显示类似:-rw-rw---- 1 root video 推荐使用 方法一(udev规则),这是最符合 Linux 权限管理机制的标准解决方案,安全且无需每次输入密码。方法二适合脚本控制,方法三适合物理按键调节。
qingkai
2025年5月30日 11:23
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码