ubuntu设置始终亮屏_如何设置默认显示亮度?

本文介绍了在Ubuntu系统中设置默认屏幕亮度的方法,包括使用xbacklight工具创建脚本和修改lightdm配置,以及通过调整/sys/class/backlight/下的文件来实现开机时的亮度设定。这些解决方案旨在解决每次启动时手动调整亮度的问题。
摘要由CSDN通过智能技术生成

问题描述

是否可以设置默认显示亮度,以便每次重启时都不必使用re-adjust?我的笔记本电脑显示屏已经在登录屏幕上消失了,因为它每次都以100%的亮度启动。

最佳解决思路

审查解决方案并提供(希望)更好的解决方案

以前的方案

基于/sys/:适用于控制台

@gan

这适用于echo 5 > /sys/class/backlight/acpi_video0/brightness,但与X不兼容。更具体地说,X不知道您的首选设置,您可能最终需要再次手动设置亮度至少一次,类似于bug #1042359。

基于setpci:system-dependent,危险

@erickjohncuevas

基于setpci -s 01:00.0 F4.B=50之类的解决方案很危险。在那里,01:00.0实际上是一个针对PCI总线上特定电路板的ID。它是system-dependent。这意味着盲目跟随这一点可能会在一些其他板上编写配置寄存器,它可能意味着什么,从未在某个时刻崩溃系统。无论如何,它也不适合X。

提出的解决方案

优点/缺点

以下解决方案具有以下优势:

与X一起玩得很好,它完全了解所选择的设置

更易读,因此可维护

不包含system-specific地址等,因此可能适用于更广泛的硬件(例如内核不了解背光,或者甚至不使用PCI-based视频板,想想Ubuntu for ARM)

它假设:Ubuntu使用lightdm(即11.10及更高版本)

它只在lightdm启动时设置背光。但如果你真的需要提前设置背光,它可以与上面的基于/sys的解决方案结合使用。

解决方案

这些命令的Copy-paste应该可以满足您的需求(sudo可能会询问您的密码)。

安装xbacklight(如果尚未安装)(它是一个小包装)。

sudo apt-get install xbacklight

您应该在命令行上测试xbacklight以查看它是否有效。例如:

xbacklight = 100 ; sleep 2 ; xbacklight = 30

尝试为您的硬件和照明条件找出合适的值。

创建一个运行xbacklight的小脚本。如果您愿意,可以将=30更改为其他值。 || true确保如果xbacklight因任何原因失败,X仍然可以启动。

sudo bash -c '{

echo "#!/bin/bash"

echo "xbacklight =30 || true"

} >> /etc/lightdm/display-setup-script.sh '

使脚本可执行

sudo chmod a+rx /etc/lightdm/display-setup-script.sh

指示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

可以通过从控制台上的根会话重新启动lightdm来测试。或者,更简单地说,通过重新启动。

在Ubuntu 12.04,12.10,13.10,14.04,14.10,16.04上测试。

请提供有关您的体验的反馈。

次佳解决思路

实际上回显一些值对亮度没有帮助,因为值会因系统而异。

首先,您需要将屏幕亮度设置为您感觉舒适的水平,这可以在系统设置→亮度和亮度中轻松完成。锁定或使用功能键。

现在转到/sys/class/backlight/(我的文件夹是intel_backlight)

在此文件夹中,您可以看到actual_brightness文件和max_brightness文件。 (如果在打开此文件后对亮度进行了任何更改,请不要忘记刷新(使用Ctrl + R或F5)以查看实际的当前设置。)

现在,每次启动系统时,我们都需要与亮度相同的值。这可以通过在启动时每次更改此文件夹中的值来完成。我们需要更改rc.local文件。

首先在终端中输入这些命令(可以通过在破折号中搜索终端或按Ctrl + Alt + T打开):

sudo -i

gedit /etc/rc.local

并添加该行

echo 900 > /sys/class/backlight/intel_backlight/brightness

将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

顺便说一句,我将行rfkill block bluetooth添加到我的rc.local文件中,因为我根本不使用蓝牙,但Ubuntu每次重启时都会启动蓝牙(即使之前的蓝牙已关闭)。您也可以添加它,以防您想要使用蓝牙,您可以随时重新启动它,即使此行在您的rc.local中)。

请勿在结尾处更改exit 0的值。如果该行不存在,请添加它。

现在即使您重新启动系统,您也将获得所需的相同值。

小心不要将亮度值设置为大于max_brightness,因为这会引发错误,说明它是无效参数。

第三种解决思路

这不是默认的。每当我重新启动时,我的亮度都设置为100%。然后我用命令设置亮度:

$ echo 5 | sudo tee /sys/class/backlight/acpi_video0/brightness

参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值