重启后桌面不记得亮度设置

Dec*_*ira 57 gnome brightness

每次我重新启动机器时,Gnome 的亮度都会恢复到 100%。我希望它会保留最后的设置。有吗?

小智 21

文件 /etc/rc.local 应如下所示:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
echo 0 > /sys/class/backlight/acpi_video0/brightness
exit 0
Run Code Online (Sandbox Code Playgroud)

每个@zerdo:在我的戴尔工作室 1558 中,亮度设置存储在/sys/class/backlight/intel_backlight/brightness. 如果您的计算机不使用 acpi_video0 文件夹,只需更改路径。

另外,根据@Nick :如果这是您阅读的唯一答案,请注意 0 inecho 0将是您的默认亮度设置。我已经设置了它,它让我发疯了很长时间:每次启动时,它都会将其设置为最低亮度设置。我更喜欢从最大亮度开始,所以我echo 10改用了。您的硬件的亮度等级可能会有所不同。


Pan*_*her 13

这个功能,背光控制,取决于你的bios和内核版本。

试试这四件事。

内核(引导)选项

启动时,在 grub 屏幕上,按 e 进行编辑。向内核行添加nomodeset acpi_backlight=vendor一些硬件可能使用不同的选项。

英特尔-nomodeset acpi_backlight=intel 宏基-acpi_backlight=acer_acpi甚至acpi_osi=Linux acpi_backlight=legacy

如您所见,您可能需要在谷歌上搜索您的设置。

quiet splash nomodeset acpi_backlight=vendor
Run Code Online (Sandbox Code Playgroud)

如果/etc/default/grub可行,请编辑这些选项并将其添加到默认选项中。

# command line
sudo -e /etc/default/grub

# graphical
gksu gedit /etc/default/grub
Run Code Online (Sandbox Code Playgroud)

编辑“GRUB_CMDLINE_LINUX_DEFAULT”行,使其看起来像这样

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset acpi_backlight=vendor"
Run Code Online (Sandbox Code Playgroud)

保存您的编辑,更新 grub

sudo update-grub
Run Code Online (Sandbox Code Playgroud)

命令行

如果这不起作用,您可以尝试手动设置亮度。

注意:路径可能因硬件/内核版本而异,可能是/proc/acpi/video0 ...,您可能需要浏览/proc/acpi目录才能找到亮度设置并相应调整以下命令。

cat /proc/acpi/video/VGA/LCD/brightness
Run Code Online (Sandbox Code Playgroud)

该命令的输出因硬件而异, 1 -> 10 、 1 -> 12 、 1 -> 100 ??? 选择一个值并设置它(为您的硬件选择值)。

sudo echo 80 > /proc/acpi/video/VGA/LCD/brightness
Run Code Online (Sandbox Code Playgroud)

如果有效,请将其添加到 /etc/rc.local

# command line
sudo -e /etc/rc.local

# graphical
gksu gedit /etc/rc.local
Run Code Online (Sandbox Code Playgroud)

在“exit 0”上方添加您的设置

echo 80 > /proc/acpi/video/VGA/LCD/brightness
Run Code Online (Sandbox Code Playgroud)

背光

你也可以试试 xbacklight

sudo apt-get install xbacklight
Run Code Online (Sandbox Code Playgroud)

然后你用命令行调整

# For 80 % brightness
xbacklight -set 80
Run Code Online (Sandbox Code Playgroud)

再次,将其添加到 /etc/rc.local

# command line
sudo -e /etc/rc.local

# graphical
gksu gedit /etc/rc.local
Run Code Online (Sandbox Code Playgroud)

在“exit 0”上方添加

xbacklight -set 80
Run Code Online (Sandbox Code Playgroud)

设置

您可以尝试设置亮度 setpci

一般语法是

sudo setpci -s <address> f4.B=your_setting
Run Code Online (Sandbox Code Playgroud)

您使用以下命令标识您的 pci 总线地址

sudo lspci | grep VGA
Run Code Online (Sandbox Code Playgroud)

例子

00:02.0 VGA compatible controller: Cirrus Logic GD 5446

setpci -s 00:02.0 F4.B=80
Run Code Online (Sandbox Code Playgroud)

如果您的设置有误,您很可能只会丢失显示器,并且必须重新启动。由于这是硬件设置,因此您确实需要先识别硬件并研究设置。

例子

英特尔 - https://bbs.archlinux.org/viewtopic.php?id=74914

东芝 - http://www.linlap.com/wiki/toshiba+satellite+t130

宏碁扩展 - https://bugs.launchpad.net/ubuntu/+source/linux/+bug/518002

Ubuntu 手册页 setpci


lev*_*que 12

这应该可以在能量选项中进行配置,将亮度设置为所需的级别,并且将始终使用它。如果您使用笔记本电脑,您还需要为电池模式配置级别......

我发现 Gnome 有一些关于 lcd 面板亮度的问题,例如,如果我在电池模式下运行并手动将亮度设置为给定级别,并且让笔记本电脑无人看管 10 秒钟,当我收回控制权时,它会恢复到预设亮度。在 A/C 模式下也是如此,只是它需要更长的时间,因此更容易被忽视。我相信所有这些设置都应该保存在某处并恢复 - 至少对于 A/C 模式。

编辑:对于 gnome3 这不起作用(至少对我而言)。

  • 所以答案是……?在屏幕设置中更改它不会为下一个会话保存它,并且电源选项中没有任何内容。 (10认同)

小智 7

这是一个快速的解决方法:-

尝试通过在终端中键入此命令来测试设置

echo 0 > /sys/class/backlight/acpi_video0/brightness
Run Code Online (Sandbox Code Playgroud)

如果亮度变为最小值,则说明正确!

/etc/rc.local通过键入编辑文件

sudo -H gedit /etc/rc.local    
Run Code Online (Sandbox Code Playgroud)

在终端

exit 0通过在开头添加 #来注释掉它,使其看起来像这样:-

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

#exit 0
Run Code Online (Sandbox Code Playgroud)

这是必要的,否则它将无法工作!

在此之后在文件中添加以下行

echo 0 > /sys/class/backlight/acpi_video0/brightness
Run Code Online (Sandbox Code Playgroud)

这样它看起来像这样:-

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

#exit 0
echo 0 > /sys/class/backlight/acpi_video0/brightness
Run Code Online (Sandbox Code Playgroud)

将 0 替换为所需的亮度值(范围从 0 到 10 )

保存文件并退出。

重新启动以查看更改。

注意:-acpi_video0如果您有不同的设备代码(主要是acpi_video0),则可能需要替换为您的设备代码。大多数用户不需要这样做。

  • 但我不认为注释掉 `exit 0` 是正确的做法。 (5认同)