如何保存亮度设置?


15

将笔记本升级到ubuntu 12.04后,我发现无法保存电源设置。每次将屏幕亮度设置为70%时,下次都将其恢复为100%。我在新的电源设置面板上找不到保存按钮(对不起,因为我现在无法发布屏幕截图)。谁能告诉我如何保存此设置?谢谢。

Answers:


16

如果您只是想更改并仅保存屏幕亮度,则可以使用 xbacklight

     sudo apt-get install xbacklight

安装后,键入命令以轻松设置屏幕亮度

     xbacklight -set `num`

num是你的屏幕亮度的百分比。

设置亮度和对比度的简便方法

     sudo setpci -s `00:02.0` F4.B=`XX` 

设置亮度00:02.0是您的VGA设备代码。XX十六进制格式00到FF

使用lspci命令找出您的VGA设备代码。

     xgamma -gamma `X`

设置对比度,X从0到1


哦,目前,我只想保存屏幕亮度设置。谢谢,Teifi。:)
鲍里斯(Boris)2012年

2
我不敢相信没有GUI。Ubuntu应该是人类的Linux。谢谢你的提示!
umpirsky

当心为此使用setpci。有关详细信息,请参见askubuntu.com/questions/66751/…–
斯特凡古里

19
  1. 通过以超级用户身份运行此命令来检查亮度级别:

    cat /sys/class/backlight/acpi_video0/max_brightness 
    

    (我的笔记本电脑的最大亮度为20)

  2. 将屏幕亮度设置为最小,并通过调用下一个命令检查当前水平

    cat /sys/class/backlight/acpi_video0/brightness 
    

    (我的笔记本电脑的最小亮度等级为0;)

  3. 编辑/etc/rc.local exit 0以下行之前添加

    echo YOUR_VALUE > /sys/class/backlight/acpi_video0/brightness
    

从现在开始,每次启动计算机时都会设置此亮度级别。


具有亮度设置的目录可以具有不同的名称。在我的情况(的ThinkPad T540p的,Ubuntu 14.04.3),它是:/sys/class/backlight/intel_backlight/
pabouk

在启动时有效,但在休眠或挂起后无效。Ubuntu 16.04
Craicerjack

8

我个人更喜欢从上次使用计算机时获得的亮度开始。这是我获得该功能的方式:

首先创建一个文件来存储会话之间的屏幕亮度:

cd /etc/init.d

须藤触摸prev_brightness

须藤chmod o + w prev_brightness

然后创建一个脚本,该脚本在关闭上一步中创建的文件时存储您当前的屏幕亮度:

须藤触摸save_screen_brightness

须藤chmod + x save_screen_brightness

sudo gedit save_screen_brightness

将其放入刚打开的文件中:

#!/ bin / sh

猫/ sys / class / backlight / acpi_video0 /亮度> /etc/init.d/prev_brightness

现在,我们需要在每次关闭或重新引导计算机时都运行脚本:

须藤ln -s /etc/init.d/save_screen_brightness /etc/rc0.d/K99save_screen_brightness

须藤ln -s /etc/init.d/save_screen_brightness /etc/rc6.d/K99save_screen_brightness

最后,我们需要在启动计算机时加载存储的值:

须藤gedit /etc/rc.local

将其放在出口0之前,放入刚刚打开的文件中:

猫/etc/init.d/prev_brightness> / sys / class / backlight / acpi_video0 / brightness

而已!


谢谢,尽管保留了先前的设置之前稍有停顿,但该解决方案还是很有魅力。
维斯诺格(Vesnog)

3

使用Ubuntu 12.10,Hevilath提供的解决方案对我不起作用。无论我对rc.local做什么,它都不会运行。

我试图添加

echo 5 > /sys/class/backlight/acpi_video0/brightness

之前exit 0没有被调用。我添加了一些日志记录语句/etc/rc.local/etc/init.d/rc.local并且什么也没有运行。

这应该起作用,因为Upstart仍在适当的时间运行较早的System V脚本以实现向后兼容。

因此,我从这里开始阅读如何编写Upstart脚本。

我认为由于System V即将淘汰,因此我应该了解Upstart。

我编写了一个简单的脚本来设置两台显示器的亮度,并且可以正常工作。

检查它在这里

您要做的就是使用sudo将文件复制到/ etc / init /目录中。除非亮度值被简单地更改,否则它将正常工作,除非将亮度值回显到错误的文件中。

希望这可以帮助


1
gksudo gedit /usr/local/bin/brightness_changer.py

粘贴下面的代码,

#!/usr/bin/python

import dbus
bus = dbus.SessionBus()
proxy = bus.get_object('org.gnome.SettingsDaemon',
                       '/org/gnome/SettingsDaemon/Power')
iface = dbus.Interface(proxy, dbus_interface='org.gnome.SettingsDaemon.Power.Screen')
iface.SetPercentage(70)

保存。然后发出命令,

sudo chmod 755 /usr/local/bin/brightness_changer.py

打开启动应用程序,

在此处输入图片说明

点击添加,

在此处输入图片说明

按照/usr/local/bin/brightness_changer.py命令给出路径并保存。

现在,无论何时登录,亮度都将设置为70


我认为您的程序可能更适合Bash,但我喜欢您的回答,也喜欢Python。
Sepero 2012年

@virpara:我正在使用您的脚本,它曾经可以工作。但是它在Gnome 3.10中不再起作用。我找不到带有dconf的org.gnome.SettingsDaemon.Power.Screen。有任何想法吗?
Swarnendu Biswas

0

我正在使用HP多合一PC。而且我无法使xbacklight在rc.local中执行,这是需要探讨的原因。

所以我只是把

xbacklight -set 0

命令添加到启动应用程序中,它有助于降低登录后的屏幕亮度。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.