我的系统规格是:Ubuntu 12.04,64 位,Acer Aspire One D270,Intel Atom CPU
许多人指出,通常使用 键来增加/减少亮度的组合键Fn在 Ubuntu 中不起作用。
我在这个论坛上找到了两种设置屏幕亮度的解决方案。
一个是使通常的组合键工作,答案如下:
另一个是使用命令
sudo setpci -s "00:02.0" F4.B=20
其中20
是表示亮度的十六进制数。
对我来说只有后者才有效。
我观察到从睡眠模式恢复后恢复了原来的亮度设置。
我只想保持亮度设置不变。我该怎么做?
尝试 1:尝试了 Alok 的建议。它只是作为启动应用程序存在。它不会像 Dropbox 图标(我的 Dropbox 帐户与 ubuntu 链接)那样在屏幕顶部栏显示为图标,以便我可以方便地更改亮度。
尝试2:另外,我必须补充一点,该方法System Settings -> Additional Drivers
给出的是一个空列表。在我之前的安装中(我不得不覆盖并重新安装 :-()),列表中有(我认为)Intel Cedarview 图形驱动程序。那么,在尝试以下任何答案中的方法之前,我必须安装吗?
更新:我从某处看到 Intel CedarView 仅适用于 32 位操作系统!
尝试 3:刚刚尝试了必须添加到 /etc/default/grub 的 quiet_splash 等,甚至阅读了下面其中一个答案中给出的线程!
暂时用这个方法解决了:
bash brightness.sh
尝试 4a:我创建了一个环境变量 BRI 并确保env
它在列表中,并尝试使用它,这是 bash 文件 bright.sh
#!/bin/bash
echo "Set Brightness (Values 00-FF): "
read s
sudo setpci -s "00:02.0" F4.B=$s
export BRI=s
但是我必须提供管理密码,并且尚未成功使其成为永久设置,并且正在努力解决这些方面的问题!
尝试 4b:我甚至尝试过(但徒劳无功)
export BRI
到/etc/default/grub
和/etc/grub.conf
~/.bashrc
我制作的/etc/bash.bashrc
shell 脚本中brightness.sh
因为我每次重新启动后都会发现 BRI 仍然有它的旧值,而不是通过启动器执行 bright.sh 给出的值!
答案1
可能,第二个解决方案发布于此主题也适用于您的笔记本电脑:将选项传递acpi_osi=Linux acpi_backlight=vendor
给 grub。尝试编辑文件中以“GRUB_CMDLINE_LINUX”开头的行/etc/default/grub
以:
GRUB_CMDLINE_LINUX="quiet splash acpi_osi=Linux acpi_backlight=vendor"
然后运行
sudo update-grub
也许这会有所帮助。
答案2
您也可以选择安装 XBACKLIGHT
评论:“对于那些笔记本电脑启动时屏幕比太阳表面还亮的人来说,这款应用就是最好的选择。您可以轻松设置此终端程序,以防止您的眼睛被笔记本电脑的屏幕亮度刺痛。下载该应用程序,然后转到系统选项卡,即屏幕右上角的齿轮形状的东西。转到启动应用程序,然后将命令行设置为“xbacklight -set 0”(或您希望背光在启动时捕捉到的任何百分比),显然,从该命令中删除引号。哇,这应该可以解决所有那些讨厌的背光问题。告诉你的朋友,因为这个是值得保留的”
编辑:以下解决方案似乎适用于某些 Acer 计算机。
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi=Linux i915.i915_enable_rc6=1"
在 /etc/default/grub 中(然后使用 sudo update-grub 进行更新)[第一个选项启用背光的硬件控制,第二个选项为英特尔显卡实现了解决方法]
答案3
我已经将此帖子添加到书签中,并会不时查看。我终于找到了解决这个问题的方法(适用于我的硬件),所以我写下这个答案以作存档,希望对其他人有所帮助。
我已经为同样的问题苦苦挣扎了将近一年半。我有一台 Acer Aspire 5750G,运行的是 Ubuntu 12.04.04(64 位)、Debian Wheezy(64 位)和 Windows 7 Ultimate。
按下 Fn+左/右箭头键时应该出现的背光滑动条的问题对我来说从来都不起作用,除了在 Windows 中(我必须在重新安装后安装 Acer 驱动程序)。我使用在这里和其他地方找到的东西整理了一些似乎可以正常工作的东西。
第一步:让小部件显示出来
此方法在 Debian Wheezy 和 Ubuntu 12.04 中均有效
编辑并在行/etc/default/grub
末添加,然后运行(请注意末尾的 2,因为我使用的是 GRUB2)。这应该在下次启动后起作用。GRUB_CMDLINE_LINUX
acpi_backlight=vendor
sudo update-grub2
第二:保留背光
确保里面有东西/sys/class/backlight
。我有一个intel_backlight
指向的符号链接../../devices/pci0000:00/0000:00:02.0/drm/card0/card0-LVDS-1/intel_backlight
该文件夹中包含一些文件:
$ cd /sys/class/backlight/intel_backlight
$ ls
actual_brightness bl_power brightness device max_brightness power subsystem type uevent
当我调暗亮度时,文件中 actual_brightness 的值会减小
$ cat actual_brightness
976
$ cat actual_brightness
304
$ cat actual_brightness
160
976 是 max_brightness 中的值,也是允许的最大值,因此不会再进一步。
我编写了一个小脚本,并尝试将其设置为 cron 作业。它按预期存储了值,但无法在启动时恢复它。
几天前我发现了这本书:Upstart 简介、指南和最佳实践
因此我制作了两个 upstart 作业来保存和恢复屏幕亮度的值。
Upstart 自 6.10 版起(我认为)就已在 Ubuntu 上安装,并且是 Debian 上的一个选项。检查您是否拥有 upstart 及其版本:
$ sudo initctl --version
initctl (upstart 1.5)
Copyright (C) 2012 Scott James Remnant, Canonical Ltd.
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
你可以把它叫做任何你喜欢的名字:anything.conf,并且它必须放在/etc/init/
当计算机关闭或重新启动时触发此作业并将文件复制/sys/class/backlight/intel_backlight/actual_brightness
到/var/backups/actualb
(这也可以更改为任何你喜欢的名字,但在第二项作业中它必须相同)。
# upstart job to save the actual screen brightness on shutdown
# file: /etc/init/backlightsave.conf
start on runlevel [!2345]
script
cp /sys/class/backlight/intel_backlight/actual_brightness /var/backups/actualb
end script
此作业加载已存储的值并根据该值设置屏幕背光。您可以将其命名为 whatever.conf 并将其放入/etc/init/
其中。
# upstart job to restore the screen brightness on boot
# file: /etc/init/backlightrestore.conf
start on runlevel [2345]
script
read brightness < "/var/backups/actualb"
pkexec /usr/lib/gnome-settings-daemon/gsd-backlight-helper --set-brightness $brightness
end script
您可以通过在终端中输入以下内容来测试作业:
$ sudo initctl name_of_the_job
现在一切都正常了,甚至在登录屏幕出现之前屏幕背光就恢复了。
希望这可以帮助
答案4
我自己针对我的 Acer 5755 上的“亮度恢复”问题提出了一个极客解决方案......
将以下代码粘贴到文本文件中,使其可执行,并添加到启动应用程序....完成
pkexec /usr/lib/gnome-settings-daemon/gsd-backlight-helper --set-brightness 800
您的显示亮度现在在启动时设置,根据您的要求更改“800”。