我对 Linux 还很陌生,在 Linux Mint 18 中使用双显示器时遇到了问题。我知道其他人也遇到了双显示器和 Linux 的问题,我搜索了论坛并尝试了足够多的方法,但有一次我弄坏了 Cinnamon 桌面,幸运的是我设法恢复到初始状态。
我运行的是 Linux Mint 18,配有 Nvidia GeForce GTX 950 显卡。如果我查看驱动程序管理器,我可以看到我正在运行驱动程序 367.57-0ubuntu0.16.4.01。我的主显示器通过 DVI 电缆插入,工作正常。如果我将第二台显示器插入 VGA 端口,我将丢失所有显示设置,并且第二台显示器永远不会显示任何输入。我尝试单击显示应用程序,它会打开一秒钟然后关闭。如果我检查 NVidia 服务器设置应用程序并点击“检测显示器”,什么也不会发生。只有拔下 VGA 电缆并重新启动才能恢复我的主显示设置。
我了解到这可能是 Nvidia 驱动程序的问题,因此我尝试:
sudo add-apt-repository ppa:xorg-edgers/ppa
sudo apt-get update
sudo apt-get install nvidia-current nvidia-settings
这破坏了 Nvidia 服务器设置。重新启动我的电脑后,它默认使用 nouveau 驱动程序。我的双显示器在此设置下运行良好,但我不再使用 Nvidia GPU。我尝试打开 Nvidia 服务器设置将 GPU 从 Intel 切换到 Nvidia,并收到以下错误:
ERROR: Error querying target relations
** Message: PRIME: No offloading required. Abort
** Message: PRIME: is it supported? no
ERROR: nvidia-settings could not find the registry key file. This file should
have been installed along with this driver at either
/usr/share/nvidia/nvidia-application-profiles-331.38-key-documentation
or /usr/share/nvidia/nvidia-application-profiles-key-documentation. The
application profiles will continue to work, but values cannot be
preopulated or validated, and will not be listed in the help text.
Please see the README for possible values and descriptions.
谷歌搜索这个错误让我陷入了修复的困境,我尝试
sudo apt-get purge nvidia*
然后通过将 nouveau 列入黑名单来手动安装驱动程序,自行下载 Nvidia 驱动程序,然后使用虚拟控制台安装驱动程序:
sudo stop service mdm
sudo sh N-357.57.run
sudo start service mdm
或类似的东西。不幸的是,当我重新启动后,Cinnamon 崩溃了,只能在“回退模式”下工作,此时我从虚拟控制台卸载了驱动程序
sudo sh N-357.57.run --uninstall
并在 nouveau 中启动。我从设备管理器重新安装了 Nvidia 驱动程序,不知何故,设法让我的系统恢复到原始状态。驱动程序已安装并正常运行:
$ inxi -xG [0/0]
Graphics: Card-1: Intel Sky Lake Integrated Graphics bus-ID: 00:02.0
Card-2: NVIDIA GM206 [GeForce GTX 950] bus-ID: 01:00.0
Display Server: X.Org 1.18.3 driver: nvidia
Resolution: [email protected]
GLX Renderer: GeForce GTX 950/PCIe/SSE2
GLX Version: 4.5.0 NVIDIA 367.57 Direct Rendering: Yes
但是我又回到了这样一种情况:插入 VGA 显示器后我的显示设置就丢失了,无法打开显示应用程序,也无法检测到第二个显示器。
有人能给我一些指导吗?正如我所说,我是 Linux 新手,在经历了这次经历后,我想我可能在谷歌搜索了这个问题后,在网上找到了一些随机命令,但输入过多了。这导致了不好的事情。
更新
这是连接两个显示器时的 xrandr 输出。看起来好像可以看到它们两个,但由于某种原因,我无法打开“显示”应用程序,第二台显示器上什么也没有显示,而且 Nvidia 设置无法检测到第二个屏幕。
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 16384 x 16384
DVI-I-0 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 connected
1920x1080 60.00 +
1680x1050 59.95
1280x1024 75.02 60.02
1440x900 59.89
1280x960 60.00
1280x800 59.81
1152x864 75.00
1280x720 60.00
1024x768 75.08 70.07 60.00
832x624 74.55
800x600 72.19 75.00 60.32 56.25
640x480 75.00 72.81 66.67 60.00
720x400 70.08
DVI-D-0 disconnected (normal left inverted right x axis y axis)
HDMI-1 connected primary 1920x1080+0+0 531mm x 299mm
1920x1080 60.00*+
1600x1200 60.00
1680x1050 59.88
1280x1024 75.02 60.02
1440x900 59.90
1280x960 60.00
1152x864 75.00
1024x768 75.08 70.07 60.00
832x624 74.55
800x600 72.19 75.00 60.32 56.25
640x480 75.00 72.81 66.67 60.00
720x400 70.08
HDMI-2 disconnected
答案1
输出兰德显示检测到两个屏幕,其中一个称为DP-1,另一个叫做HDMI-1。当然我不知道哪一个是哪一个,所以你必须尝试以下两个命令之一:
xrandr --output DP-1 --auto --right-of HDMI-1
xrandr --output HDMI-1 --auto --right-of DP-1
其中一个应该打开静音屏幕。如果屏幕变黑,请关机,然后重启尝试另一个命令。