我有一台运行 Ubuntu 14.04 的 Thinkpad W530;我尝试通过 VGA 和 DisplayPort 连接外接显示器,但都无法被检测到。
我关闭了 Optimus,只使用独立显卡(NVIDIA Quadro K1000M)。我使用的是“推荐的专有驱动程序”(根据系统工具 -> 首选项 -> 附加驱动程序):NVIDIA 二进制驱动程序 - nvidia-331 的 331.38 版(专有,已测试)。我还尝试了 nvidia-current 软件包,我认为是 304 版,但它也不起作用。
lshw -C video
给出
*-display UNCLAIMED
description: VGA compatible controller
product: GK107GLM [Quadro K1000M]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list
configuration: latency=0
resources: memory:f2000000-f2ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:5000(size=128) memory:f3080000-f30fffff
“未认领”的事情很奇怪,因为笔记本电脑显示屏工作正常(并且具有正确的分辨率等)。
奇怪的是,nvidia-settings 显示的窗口与 Ubuntu 帮助页面上所声称的窗口有很大不同,Ubuntu 帮助页面上左侧显示了检测到的 X 屏幕:
相反,我发现 这似乎没什么帮助。
答案1
好吧,这是我修复它的方法(我不是 100% 确定它已经修复,但看起来像是!希望没有回归!)一切都按以下方式运行sudo
;我可能在此期间的某些时候重新启动,但我不记得具体时间 :/ 我猜你应该在步骤 5 之后重新启动,也许在步骤 3 之后。
- 在 BIOS 中禁用 Optimus;仅使用独立 NVIDIA 显卡。
apt-get remove --purge bumblebee nvidia*
apt-get install --reinstall libgl1-mesa-dri libgl1-mesa-glx libegl1-mesa-drivers
apt-get install nvidia-common nvidia-settings nvidia-331
- 运行
nvidia-xconfig
(不确定这是否有必要,但似乎你必须在某个时候这样做) - 添加
nvidia_331
/etc/modules
- 此时,我的 libGL 不知为何指向了 mesa 的 openGL 版本,因此我遵循了建议这里:我添加了和
/usr/lib/nvidia-331
,然后运行。/usr/lib32/nvidia-331
/usr/lib/nvidia-331/alt_ld.so.conf
ldconfig
现在我已连接多个外部显示器,OpenGL 正常运行,屏幕上没有奇怪的像素伪影。Nvidia 持久守护程序不会在启动时崩溃,并且 nvidia 内核模块会在启动时加载。
答案2
该问题是由于 ubuntu-drivers-common 中的一个错误
我的 W530 也遇到了同样的问题,可以通过降级到 ubuntu-drivers-common=1:0.2.91.4 来解决这个问题
sudo aptitude install ubuntu-drivers-common=1:0.2.91.4
sudo aptitude hold ubuntu-drivers-common
答案3
我在联想 ThinkPad T530 上运行 Ubuntu 14.04,遇到了同样的问题。我解决这个问题的方法是进入 BIOS,在显示设置中将图形设备设置为“集成”。