我刚刚在笔记本电脑上安装了 Ubuntu 22.04 作为双启动,但它无法识别我的第二台显示器。如果我使用 Windows,它就可以正常工作。
显卡是 Nvidia GTX 960m
安全启动已禁用
我搜索了很长时间,但在任何以前的/类似的线程中都没有找到解决方案。
输出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) 381mm x 214mm
1920x1080 60.00*+ 59.97 59.96 59.93
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
1368x768 59.88 59.85
1360x768 59.80 59.96
1280x800 59.99 59.97 59.81 59.91
1152x864 60.00
1280x720 60.00 59.99 59.86 59.74
1024x768 60.04 60.00
960x720 60.00
928x696 60.05
896x672 60.01
1024x576 59.95 59.96 59.90 59.82
960x600 59.93 60.00
960x540 59.96 59.99 59.63 59.82
800x600 60.00 60.32 56.25
840x525 60.01 59.88
864x486 59.92 59.57
800x512 60.17
700x525 59.98
800x450 59.95 59.82
640x512 60.02
720x450 59.89
700x450 59.96 59.88
640x480 60.00 59.94
720x405 59.51 58.99
684x384 59.88 59.85
680x384 59.80 59.96
640x400 59.88 59.98
576x432 60.06
640x360 59.86 59.83 59.84 59.32
512x384 60.00
512x288 60.00 59.92
480x270 59.63 59.82
400x300 60.32 56.34
432x243 59.92 59.57
320x240 60.05
360x202 59.51 59.13
320x180 59.84 59.32
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
HDMI-2 disconnected (normal left inverted right x axis y axis)
sudo lshw -C 显示
*-display
description: 3D controller
product: GM107M [GeForce GTX 960M]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a2
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:133 memory:93000000-93ffffff memory:50000000-5fffffff memory:60000000-61ffffff ioport:4000(size=128)
*-display
description: VGA compatible controller
product: HD Graphics 530
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
logical name: /dev/fb0
version: 06
width: 64 bits
clock: 33MHz
capabilities: pciexpress msi pm vga_controller bus_master cap_list rom fb
configuration: depth=32 driver=i915 latency=0 resolution=1920,1080
resources: irq:131 memory:92000000-92ffffff memory:a0000000-afffffff ioport:5000(size=64) memory:c0000-dffff
我尝试从“软件和更新”->“附加驱动程序”安装不同的驱动程序,
sudo ubuntu-drivers autoinstall
还添加了 PPA 并安装了推荐的驱动程序
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo ubuntu-drivers devices
然后我安装了另一个驱动程序,但没有什么改变。
运行这些命令后,监视器处于镜像模式,但在 xrandr 中显示为断开连接
sudo xrandr --output HDMI-1 --auto
sudo xrandr --addmode HDMI-1 1920x1080
sudo xrandr --output HDMI-1 --mode 1920x1080 --pos 0x0
我也安装了 lightdm,没有任何变化。
有人有什么可行的想法吗?如果您需要更多信息,也请发表评论。
答案1
我也尝试了不同的方法,你可以用不同的驱动程序进行测试,我尝试使用 525-open,但没有成功,所以我换成了 515,然后重启,然后就可以使用了
答案2
就我而言,我运行了以下命令,然后重新启动,并检测到第二台显示器。
sudo ubuntu-drivers autoinstall
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo ubuntu-drivers devices
答案3
这似乎是一个非常普遍的问题,而且也与具体情况有关。
就我而言,我既有内置英特尔显卡,也有外置 nvidia 显卡。我尝试了多种方法才让它正常工作。
脚步
- 从 lightdm 切换到 gdm - 使用 lightdm 作为显示管理器而不是 gdm 的有效性已有记录这里(尽管这只是 Linux 不同版本的问题)。请注意,这不是绝对必要的步骤。
- HDMI 很可能已断开,这就是无法检测到外接显示器的原因。您可以使用 xrandr 检查这一点。
- 安装合适的 nvidia 驱动程序。ubuntu 软件中心推荐的那个对我来说不起作用。相反,我使用命令
sudo ubuntu-drivers list
检查兼容驱动程序列表,然后使用sudo apt install nvidia-driver-[your_version]
。 - 从 Intel 显卡切换到 NVIDIA 显卡 - 如前面的评论所述,这可以通过
sudo prime-select nvidia
重新启动来完成。如果没有驱动程序,您将无法切换。如果安装了错误的驱动程序,即使在主屏幕上也不会打开 GUI。 - 如果安装了错误的驱动程序版本,GUI 可能无法打开。使用 导航到终端
Ctrl + Alt + F1
,使用 清除所有当前驱动程序版本sudo apt-get remove --purge nvidia*
,然后重新安装不同版本的驱动程序。请注意,强烈建议使用单个驱动程序版本并删除所有其他版本。理想情况下,您应该能够nvidia-smi
在正确安装后运行。找到正确的驱动程序版本对我来说似乎是关键的一步。 - 安装正确的驱动程序后 xrandr 的输出
Screen 0: minimum 8 x 8, current 3840 x 1260, maximum 32767 x 32767
HDMI-0 connected 1920x1080+1920+180 (normal left inverted right x axis y axis) 521mm x 293mm
1920x1080 60.00*+ 59.94 50.00 ...
eDP-1-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
1920x1080 144.00*+ 144.00 60.00 ...