Jer*_*emy 37 backlight laptop brightness xbacklight
是否可以设置默认显示亮度,以便每次重新启动时都不必重新调整?我的笔记本电脑显示器在登录屏幕上已经让我眼睛一亮,因为它每次都以 100% 的亮度启动。
Sté*_*hon 26
/sys/-based : 适用于控制台@gan
这有效,echo 5 > /sys/class/backlight/acpi_video0/brightness但不适用于 X。更具体地说,X 不知道您的首选设置,您可能最终需要至少再次手动设置亮度,类似于错误 #1042359。
setpci-based :依赖于系统,危险@erickjohncuevas
基于诸如此类的解决方案setpci -s 01:00.0 F4.B=50是危险的。在那里,01:00.0实际上是针对 PCI 总线上的特定板卡的 ID。而且它依赖于系统。这意味着盲目地遵循这一点可能会在其他一些板上写入配置寄存器,这可能意味着任何事情,从没有任何意义到在将来的某个时候使系统崩溃。无论如何它也不能很好地与 X 配合使用。
下面的解决方案具有以下优点:
它假设: Ubuntu 使用 lightdm(即 11.10 及更高版本)
它仅在 lightdm 启动时设置背光。但是/sys如果你真的需要提前设置背光,它可以与上面的-based解决方案结合使用。
这些命令的复制粘贴应该可以满足您的需求(sudo可能会询问您的密码)。
安装xbacklight如果尚未安装它(它是一个小包装)。
sudo apt-get install xbacklight
Run Code Online (Sandbox Code Playgroud)
您应该xbacklight在命令行上进行测试以查看它是否有效。例如:
xbacklight = 100 ; sleep 2 ; xbacklight = 30
Run Code Online (Sandbox Code Playgroud)
尝试为您的硬件和照明条件找出合适的值。
创建一个小脚本运行xbacklight. 如果您愿意,
您可以将 更改=30为另一个值。
在|| true确保如果xbacklight由于某种原因失败,X仍然可以启动。
sudo bash -c '{
echo "#!/bin/bash"
echo "xbacklight =30 || true"
} >> /etc/lightdm/display-setup-script.sh '
Run Code Online (Sandbox Code Playgroud)使脚本可执行
sudo chmod a+rx /etc/lightdm/display-setup-script.sh
Run Code Online (Sandbox Code Playgroud)指示lightdm在启动 X 时运行脚本。
具体来说,这会在 lightdm 配置文件中添加一行 display-setup-script,但前提是还没有。
if grep -ri ^display-setup-script /etc/lightdm/
then
echo "There may be already a display-setup-script. It may already do what you need. Else please adjust manually" ;
else
if [[ -d /etc/lightdm/lightdm.conf.d ]]
then
# Ubuntu 13.10 and above have lightdm.conf.d. 14.04 *only* has lightdm.conf.d.
DEST_CONF_FILE=/etc/lightdm/lightdm.conf.d/20-default-brightness.conf
else
# Ubuntu 12.04, 12.10, 14.10 do not have lightdm.conf.d, so we change main configuration file
DEST_CONF_FILE=/etc/lightdm/lightdm.conf
fi
echo "Writing into $DEST_CONF_FILE"
sudo bash -c "{
echo '[SeatDefaults]' ;
echo display-setup-script=/etc/lightdm/display-setup-script.sh ;
} >> $DEST_CONF_FILE" ;
fi
Run Code Online (Sandbox Code Playgroud)可以通过lightdm从控制台上的根会话重新启动来进行测试。或者,更简单地说,通过重新启动。
在 Ubuntu 12.04、12.10、13.10、14.04、14.10、16.04 上测试。
请提供有关您的体验的反馈。
实际上回显某个值对亮度没有帮助,因为该值会因系统而异。
首先,您需要将屏幕亮度设置为您感到舒适的水平,这可以在系统设置→亮度和锁定中轻松完成,也可以使用功能键来完成。
现在转到/sys/class/backlight/<folder>(我的文件夹是intel_backlight)

在此文件夹中,您可以看到actual_brightness文件和max_brightness文件。(如果您在打开此文件后对亮度进行了任何更改,请不要忘记刷新(使用 Ctrl+R 或 F5)以查看实际的当前设置。)
现在我们每次启动系统时都需要与亮度相同的值。这可以通过在每次启动时更改此文件夹中的值来完成。我们需要更改 rc.local 文件。
首先在终端中输入这些命令(可以通过在破折号中搜索终端或按 Ctrl+Alt+T 来打开):
sudo -i
gedit /etc/rc.local
Run Code Online (Sandbox Code Playgroud)
并添加行
echo 900 > /sys/class/backlight/intel_backlight/brightness
Run Code Online (Sandbox Code Playgroud)
将 900 替换为您需要的任何值(即您从上述过程中获得的值)。也替换intel_backlight为/sys/class/backlight/.
例如,我的 /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.
rfkill block bluetooth
echo 900 > /sys/class/backlight/intel_backlight/brightness
exit 0
Run Code Online (Sandbox Code Playgroud)
rfkill block bluetooth顺便说一句,我将这一行添加到我的 rc.local 文件中,因为我根本不使用蓝牙,但 Ubuntu 每次重新启动时都会启动蓝牙(即使蓝牙之前关闭)。您也可以添加它,以防万一您想使用蓝牙,您可以随时重新启动它,即使此行在您的 rc.local 中)。
不要改变exit 0结尾的值。如果该行不存在,请添加它。
现在,即使您重新启动了系统,您也将拥有所需的相同值。
小心不要将亮度值设置为大于max_brightness,因为这会抛出一个错误,指出这是一个无效参数。
小智 3
这不是默认的。每当我重新启动时,我的亮度都会设置为 100%。然后我用命令设置亮度:
$ echo 5 | sudo tee /sys/class/backlight/acpi_video0/brightness
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
55372 次 |
| 最近记录: |