原来使用Deepin 15.11无任何问题,但是升级到Deepin 20社区版就出现了半截屏幕花屏的问题。电脑是小米Air 13.3,双显卡是Nvidia GeForce MX150和Intel Corporation HD Graphics 620,安装闭源驱动也没有效果。
附:双显卡及xorg.conf
双显卡信息:
xorg.conf:
Section "ServerLayout"
Identifier "layout"
Screen 0 "intel"
Screen 1 "nvidia"
EndSection
Section "Device"
Identifier "intel"
Driver "intel"
BusID "0:2:0"
Option "AccelMethod" "SNA"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "1:0:0"
Option "ConstrainCursor" "off"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "on"
Option "IgnoreDisplayDevices" "CRT"
EndSection
解决方案
如果在花屏时可以通过睡眠,调整桌面分辨率,旋转桌面等方式进行恢复正常的话,可以试着将这个动作加入开机启动里面,每次开机的时候,自动调整分辨率,或者旋转桌面来触发正常。
1.首先创建一个脚本,名字什么的随便起,这里为了方便介绍,就将脚本起名为resize_screen.sh
2.将以下内容加入resize_screen.sh脚本中
#!/bin/bash
# 用于开机登录桌面3秒之后,就调整桌面分辨率,从而触发屏幕恢复正常
# 避免每次需要手工调整屏幕来恢复花屏的问题
normal_resolution=$(xrandr|grep -A 1 "*"|awk '{print $1}'|head -n1)
new_resolution=$(xrandr|grep -A 1 "*"|awk '{print $1}'|tail -n1)
primary_screen=$(xrandr |grep 'primary'|awk '{print $1}')
sleep 3
xrandr --output $primary_screen --mode $new_resolution
sleep 1
xrandr --output $primary_screen --mode $normal_resolution
注:给resize_screen.sh执行权限,执行chmod +x resize_screen.sh命令。
3.创建开机启动的文件,假设取名叫做resize_screen.desktop
[Desktop Entry]
Comment=Auto Resize Screen
Exec=/home/eleven/private_cloud_disk/脚本/resize_screen.sh
Hidden=false
Name=ResizeScreen
NoDisplay=true
Type=Application
X-GNOME-Autostart-enabled=true
注:Exec的位置改成你脚本的实际路径。
4.将resize_screen.desktop移动到$HOME/.config/autostart/下
最后注销系统之后再登录,试试看是否自动调整分辨率了。
结语
除了以上解决方案外,解决半截屏幕花屏问题就不要用Deepin 20社区版,比如改用UOS 20等版本。或者等待Deepin 20团队发布解决该BUG的补丁,目前使用小米AIR的人都遇到同样的问题。
相关主题