介绍

介绍

介绍

启动后,我的屏幕背光出现问题,所以当我第一次进入登录屏幕时。我正在运行 Ubuntu 18.04 bionic。这是一个全新安装,完全更新。您可能还对显卡感兴趣:Intel® HD Graphics 5300(Broadwell GT2)。

问题

事情是这样的:
当我启动平板电脑/笔记本电脑时,我会看到 grub,我可以选择要启动的操作系统(与 Windows 双启动)。我启动 Ubuntu,然后看到启动画面。然后,当登录屏幕应该出现时,屏幕只是黑色的。但是,我可以通过按下登录enter,然后输入我的密码并enter再次按下。然后背光亮起,我可以使用我的平板电脑。如果我注销,背光保持亮起,登录屏幕可见。

打开背光的另一种方法是通过 HDMI 连接器连接外部屏幕。然后我的平板电脑的屏幕突然也能工作了。如果我断开外部屏幕的连接,背光就会保持亮着。

所以我认为存在一个问题,我的背光在启动过程中被关闭,需要一个触发器才能再次打开它。

我尝试过

我已经搜索了几天,找到了诸如在 grub 中添加内核参数之类的解决方案,但这些并不能解决问题。

我还尝试使用 systemd 服务调用我编写的脚本,通过文件将背光亮度设置为最大值/sys/class/backlight/intel_backlight/...。没有成功。然后我更改了脚本,使其将当前亮度(延迟)写入 tmp 文件夹中的文件中。查看此文件时,我发现亮度已经达到最大值。

附加信息

也许这个信息也能有所帮助:将值写入文件夹中0的文件将导致相同的黑屏。这就是为什么我首先认为文件中的值是,然后我尝试通过 systemd 服务将其强制为最大值。brightnesssysbrigtness0


有人知道问题出在哪里吗?或者有其他方法可以检查背光是打开还是关闭(通过启动脚本,或者必要时我可以自己制作)?

更新 1 25/08

我发现在 sys 文件夹中还有一个文件bl_power。因此,我对通过 systemd 启动的 shell 脚本进行了一些编辑,以便我也可以看到其中的内容bl_power

0我发现当它包含屏幕打开的值时,另一个值会关闭背光。猜猜是什么,首先它0在启动期间包含值(我猜是在启动画面期间),但它会更改为。但是,我无法通过我的脚本4强制此值。0

目前,这是 shell 脚本:SYS="/sys/class/backlight/intel_backlight" BRIGHT="${SYS}/brightness" POWER="${SYS}/bl_power" TMP="/tmp/backlight"

cat /proc/uptime | cut -d ' ' -f 1 > ${TMP}
cat ${BRIGHT} >> ${TMP}
cat ${POWER} >> ${TMP}

sleep 10

cat /proc/uptime | cut -d ' ' -f 1 >> ${TMP}
cat ${BRIGHT} >> ${TMP}
cat ${POWER} >> ${TMP}

echo 0 > ${POWER}
cat ${POWER} >> ${TMP}

systemd 服务文件如下: [Unit] Description=Enable backlight After=gdm3.service

[Service]
ExecStart=/etc/systemd/enablebacklight.sh
Type=forking

[Install]
WantedBy=multi-user.target

对于那些想知道我的脚本输出到 tmp 文件的人:

5.72    # uptime
937     # brightness
0       # bl_power
15.73   # uptime after 10 sec sleep
937     # brightness after 10 sec sleep
4       # bl_power after 10 sec sleep
4       # bl_power after echoing 0 to it

更新 2 25/8

我已经从 grub 命令行中删除了quietsplash选项。现在显示屏会短暂关闭(1 秒或更短时间),然后重新打开。然后会显示一个带有[OK]标志的列表,然后停止。如果我随后按ctrl+ alt+F2跳转到控制台屏幕,然后按相同的组合但使用F1,屏幕会保持打开状态,我可以通过 gnome 登录。有谁有想法吗?

我最初以为是启动画面的问题,但为什么在显示登录画面时无法通过 systemd 启动脚本写入... 我通过创建一个脚本对此进行了测试,该脚本等待直到0获得不同于的值,然后进入一个循环,该循环仅在写入值后才存在,然后从中读取值。 只要我不登录,脚本就会继续运行,这意味着立即被一个不同于的值覆盖(我检查过它包含)。bl_powerbl_power000bl_powerbl_power04

答案1

我自己找到了“解决方案”。如果我更改文件/etc/gdm3/custom.conf并取消注释以下行:

# WaylandEnable=false

然后启动后显示登录屏幕(因此背光亮起)。成功启动一次后,我再次注释掉该行,现在它仍然可以工作。有点奇怪,但现在它可以工作了。

相关内容