我做了什么

我做了什么

我使用的是笔记本电脑的内置显示器和两个连接到它的外接显示器,安装了 Ubuntu 20.04 LTS。
出于某种原因,我不得不重新安装操作系统。重新安装后,只有两个显示器可用,并且无法检测到第三个显示器。

问题

  • 我只能使用一个外接显示器。另一个未被检测到。
    • Setting -> DisplaysUbuntu中未显示第二个外部显示器nvidia-settings -> X Server Display Configuration -> Detect Displays
  • 当我第一次插入一个外接显示器时,它可以正常工作。如果我随后插入另一个外接显示器,第一个显示器消失,而后者可以正常工作。
  • 我想同时使用内置显示器和两个外接显示器,在重新安装之前运行良好

信息

个人电脑:联想 Thinkpad T490,英特尔酷睿 i5
图形处理器:GeForce MX250
操作系统/内核:Ubuntu 20.04 LTS / 5.8.0-50-通用

  • 我的笔记本电脑有两个 USB-C 端口和一个 HDMI 端口。显示器 A 通过 HDMI-HDMI 电缆连接,显示器 B 通过 USB-USB 电缆连接。单独连接时,两者均可正常工作。
  • xrandr -q连接两个外接显示器时的输出:
Screen 0: minimum 8 x 8, current 2463 x 2160, maximum 32767 x 32767
eDP-1-1 connected primary 1920x1080+543+1080 (normal left inverted right x axis y axis) 309mm x 174mm
   1920x1080     60.05*+  60.01    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-1 disconnected (normal left inverted right x axis y axis)
HDMI-1-1 disconnected (normal left inverted right x axis y axis)
DP-1-2 disconnected (normal left inverted right x axis y axis)
HDMI-1-2 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 300mm x 260mm
   1920x1080     60.00 +  60.00*   50.00    59.94
   1400x1050     59.95
   1280x1024     60.02
   1440x900      59.90
   1280x960      60.00
   1280x720      60.00    59.94
   1440x576      50.00
   1024x768      60.00
   1440x480      60.00    59.94
   800x600       60.32
   720x576       50.00
   720x480       60.00    59.94
   640x480       72.81    60.00    59.94
  • 输出xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x1b8 cap: 0x1, Source Output crtcs: 0 outputs: 0 associated providers: 1 name:NVIDIA-0
Provider 1: id: 0x1e0 cap: 0x6, Sink Output, Source Offload crtcs: 3 outputs: 5 associated providers: 1 name:modesetting
  • 输出xrandr --listmonitors
Monitors: 2
 0: +*eDP-1-1 1920/309x1080/174+543+1080  eDP-1-1
 1: +HDMI-1-2 1920/300x1080/260+0+0  HDMI-1-2
  • 输出apt list --installed | grep -i nvidia
libnvidia-cfg1-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
libnvidia-common-460/focal-updates,focal-updates,focal-security,focal-security,now 460.56-0ubuntu0.20.04.1 all [installed,automatic]
libnvidia-compute-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
libnvidia-compute-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 i386 [installed,automatic]
libnvidia-decode-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
libnvidia-decode-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 i386 [installed,automatic]
libnvidia-encode-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
libnvidia-encode-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 i386 [installed,automatic]
libnvidia-extra-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
libnvidia-fbc1-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
libnvidia-fbc1-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 i386 [installed,automatic]
libnvidia-gl-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
libnvidia-gl-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 i386 [installed,automatic]
libnvidia-ifr1-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
libnvidia-ifr1-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 i386 [installed,automatic]
nvidia-compute-utils-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
nvidia-dkms-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
nvidia-driver-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed]
nvidia-kernel-common-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
nvidia-kernel-source-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
nvidia-prime/focal-updates,focal-updates,now 0.8.16~0.20.04.1 all [installed,automatic]
nvidia-settings/focal-updates,now 460.39-0ubuntu0.20.04.1 amd64 [installed,automatic]
nvidia-utils-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]
xserver-xorg-video-nvidia-460/focal-updates,focal-security,now 460.56-0ubuntu0.20.04.1 amd64 [installed,automatic]

我做了什么

所有这些都不起作用:

  • 使用 apt 安装 nvidia 驱动程序。以下是 的输出nvidia-smi
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 460.56       Driver Version: 460.56       CUDA Version: 11.2     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  GeForce MX250       Off  | 00000000:2D:00.0 Off |                  N/A |
    | N/A   55C    P0    N/A /  N/A |    487MiB /  2002MiB |      9%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
  • 在 lightdm 和 gdm3 之间切换。
  • 拔下并重新连接电缆。
  • sudo ubuntu-drivers autoinstall,没有更新或新安装。
  • 在 BIOS/EFI 设置中禁用安全启动。
  • 解决方案此主题
  • select-prime nvidia
  • 编辑/etc/gdm3/custom.conf(解决方案此主题)。

StackExchange 中有一些相关问题,但对我来说都不起作用。我不想使用 nouveau,因为我遇到了太多糟糕的问题。
感谢您在过程中提供的帮助。

答案1

我自己解决了这个问题,尽管结果不是 100% 令人满意。

我做了什么

  • 重新安装 Ubuntu 20.04。
    • 选择minimal install
    • 不要選擇3rd party software
      • 选择3rd party software会导致在 apt 存储库中安装 nvidia 驱动程序,这导致我的情况的安装过程崩溃。
  • 立即通过黑名单nouveau驱动程序/etc/modprobe.d/blacklist-nvidia-nouveau
  • 直接从 nvidia 主页安装 nvidia 驱动程序。
    • 忽略 apt 存储库中的那些。
    • 忽略ubuntu-drivers autoinstallubuntu-drivers devices
    • 安装最新版本。我的情况是 2021 年 4 月发布的 v465.24.02。
  • 进入 BIOS/EFI 设置。
    • 禁用安全启动。
    • 将视频内存大小(我不记得确切的名称)从 256MB 更改为 512MB。

此时,我的 Ubuntu 关于页面显示我正在使用NVIDIA Corporation GP108M [GeForce MX250] / Mesa Intel® UHD Gr...

  • 使用通过 USB-C 连接到笔记本电脑且具有 2 个 HDMI 插槽的 USB 集线器。
  • 通过 HDMI 电缆将两个外部显示器与集线器连接。

此时,2 个外接显示器中的 1 个工作正常。xrandr -q虽然显示器完全是黑色的,但 2 个中的 2 个都可以识别。

  • 输入xrandr -q并检查空白屏幕的名称。
  • xrandr --output DP-2-1 --mode 1024x768 --left-of eDP-1其中DP-2-1是空白屏幕,eDP-1是主屏幕。

75% 满意结果

  • 2 个外接显示器中有 2 个可以工作。
  • 每 30 至 60 秒,2 个外部显示器中的 1 个会黑屏。
  • 我的笔记本电脑连接外接显示器失败的概率为 60%。

虽然这不是完全完美的结果,但目前我已经满意了。
我不知道哪些操作效果好,如果我愿意,我会进一步研究。
谢谢。

相关内容