我意识到我的问题有可能重复。但是,我搜索了不同的页面,但没有任何解决方法。我最近完成了Ubuntu 18.04(以前的长期发行版)的全新安装,并且根本无法获取亮度键来触发亮度更改。
细节:
- Ubuntu x64 18.04。
- 不使用Wayland。
- 处理器中没有集成图形。
- 单击电池图标时,没有屏幕亮度滑块。我在以前的Ubuntu安装上使用相同的硬件显示了亮度控制器-为什么在Ubuntu的此迭代中隐藏了它?
- 如下图所示,正在使用NVIDIA专有驱动程序:
中央处理器:
*-cpu
description: CPU
product: Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz
bus info: cpu@0
version: Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz
capabilities: x86-64 fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp cpufreq
GPU:
sudo lshw -C display
*-display
description: VGA compatible controller
product: GP106M [GeForce GTX 1060 Mobile]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:122 memory:dd000000-ddffffff memory:90000000-9fffffff memory:a0000000-a1ffffff ioport:e000(size=128) memory:c0000-dffff
这是我当前的grub配置:
GRUB_DEFAULT=0
GRUB_TIMEOUT=10
GRUB_TIMEOUT_STYLE=menu
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_backlight=vendor"
启用这些设置(设置完后我确实重新启动了grub和系统),我可以监听Fn + Brightness组合:
acpi_listen
video/brightnessdown BRTDN 00000087 00000000
video/brightnessup BRTUP 00000086 00000000
这样,我至少知道按下亮度更改键(通过Fn加号F8可降低亮度或F9提高亮度)已被系统识别。如果我没记错的话,这些事件应该触发某些亮度更改脚本。
但是,即使分配了这些事件,似乎也没有任何调用。
降低亮度:视频/降低亮度BRTDN 00000087 00000000
cat /etc/acpi/events/asus-keyboard-backlight-down
# /etc/acpi/events/asus-keyboard-backlight-down
# This is called when the user presses the key brightness
# down button and calls /etc/acpi/asus-keyboard-backlight.sh for
# further processing.
event=video/brightnessdown BRTDN 00000087 00000000
action=/etc/acpi/asus-keyboard-backlight.sh down
亮度提高:视频/亮度提高BRTUP 00000086 00000000
cat /etc/acpi/events/asus-keyboard-backlight-up
# /etc/acpi/events/asus-keyboard-backlight-up
# This is called when the user presses the key brightness
# up button and calls /etc/acpi/asus-keyboard-backlight.sh for
# further processing.
event=video/brightnessup BRTUP 00000086 00000000
action=/etc/acpi/asus-keyboard-backlight.sh up
这两个事件将以下文件定义为操作:
vim /etc/acpi/asus-keyboard-backlight.sh
其内容是:
KEYS_DIR=/sys/class/leds/phy0-led\:\:kbd_backlight
test -d $KEYS_DIR || exit 0
MIN=0
MAX=$(cat $KEYS_DIR/max_brightness)
VAL=$(cat $KEYS_DIR/brightness)
if [ "$1" = down ]; then
VAL=$((VAL-1))
else
VAL=$((VAL+1))
fi
if [ "$VAL" -lt $MIN ]; then
VAL=$MIN
elif [ "$VAL" -gt $MAX ]; then
VAL=$MAX
fi
echo $VAL > $KEYS_DIR/brightness
此外,如果我检查变量$ KEYS_DIR中的目录,则包含以下内容:
sudo ls /sys/class/leds/phy0-led
brightness device max_brightness power subsystem trigger uevent
在亮度和max_brightness文件是空的。
一切似乎都已正确设置,但我不明白为什么亮度没有变化,如果使用替代程序(例如亮度控制器或xbacklight),重新启动后为什么它没有保存,为什么亮度滑块丢失了?
非常感谢你。
您找到解决方案了吗?我在这里摆弄司机:-(
—
aggsol
@aggsol我最终安装了较新版本的Ubuntu,并且它再次开始工作。使用18.04时找不到修复程序。
—
Blitzkoder