我全新安装了 Ubuntu 20.04,但它无法识别我的第二台显示器
我已经执行了以下命令(我相信只有这些在 19.10 版中有效):
sudo apt update && sudo apt upgrade -y
sudo ubuntu-drivers autoinstall
Run Code Online (Sandbox Code Playgroud)
我使用的视频驱动程序是 nvidia-driver-440
xrandr
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
1920x1080 60.02*+ 60.01 59.97 59.96 59.93 48.03
1680x1050 59.95 59.88
1600x1024 60.17
1400x1050 59.98
1600x900 59.99 59.94 59.95 59.82
1280x1024 60.02
1440x900 59.89
1400x900 59.96 59.88
1280x960 60.00
1440x810 60.00 59.97 …
Run Code Online (Sandbox Code Playgroud) 因此,对于一些背景知识:我在 HP 笔记本电脑上使用 Ubuntu 18.04,它使用双 GPU 设置。之前,我一直只使用 Nouveau 驱动程序,但最近我想添加第二台显示器,所以我切换到专有的 Nvidia 驱动程序 390.77(这本身就是一种奥德赛)。
现在的问题是,虽然辅助显示器(通过 HDMI 连接)工作正常,但主要的内置笔记本电脑屏幕却没有。在启动序列期间,笔记本电脑屏幕上的所有内容都正常显示,包括 grub 菜单和启动日志。
但是,当日志到达“UID 120 的启动用户管理器”(此时大概是图形驱动程序已启动)时,笔记本电脑屏幕在那里冻结,所有进一步的输出都显示在辅助监视器上。Ubuntu 显示设置仅识别单个显示器(外部显示器),nvidia-settings
.
可能值得注意的是,我将这个系统与 Windows 10 一起双启动,在 Windows 下这个问题不会发生,两个显示器都可以正常工作,就像你在那里期望的那样。
现在,我个人怀疑它可能与双 GPU 有关系,因为英特尔的通常输出到笔记本电脑的屏幕,而 Nvidia 的输出到 HDMI 端口,但我不确定。
我曾尝试通过 使用英特尔 GPU sudo prime-select intel
,但在这种情况下,Nvidia 驱动程序根本没有加载,我只能使用笔记本电脑的主屏幕,而无法识别外部显示器(即类似于下的行为新风)。此外,这会导致分辨率非常低,只能通过手动添加新模式来规避xrandr
。
至于一些可能相关的数据,这里是输出lswh -C video
:
*-display
description: VGA compatible controller
product: GP107M [GeForce GTX 1050 Ti Mobile]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: …
Run Code Online (Sandbox Code Playgroud)