通过 HDMI 连接第二个屏幕

通过 HDMI 连接第二个屏幕

我对 Linux 还很陌生:我最近安装了 Ubuntu 14.04 Gnome(我买笔记本电脑时没有操作系统)。它有一个 Intel Haswell Mobile 芯片组,我似乎无法通过 HDMI 连接第二个屏幕(HP Pavillon 23xi)。

我是否应该更新驱动程序或做其他事情?

感谢所有人的帮助

编辑:回答 Jan 的评论:

~ sudo lsmod|grep 915    
i915                  783805  7 
drm_kms_helper         55071  1 i915
drm                   303102  6 i915,drm_kms_helper
i2c_algo_bit           13413  1 i915
video                  19476  1 i915

~ glxinfo |grep render未被识别

~ for i in /sys/class/drm/card*/enabled; do echo -en "$i\t"; cat $i;done
/sys/class/drm/card0-DP-1/enabled       disabled
/sys/class/drm/card0-eDP-1/enabled      enabled
/sys/class/drm/card0-HDMI-A-1/enabled   disabled
/sys/class/drm/card0-HDMI-A-2/enabled   disabled
/sys/class/drm/card0-VGA-1/enabled      disabled

答案1

在 Ubuntu 14.04 甚至 16.04 上,我的电视上的 Intel HD 集成显卡的第二个 HDMI 端口也出现了同样的问题。

有时电视能被检测到,有时不能。在 Windows 下也完全一样,在设备管理器中禁用图形适配器一段时间,然后重新启用它,第二个 HDMI 上的电视就能奇迹般地被检测到。

最后,我找到了一个适用于 Linux 的解决方案。问题是 HDMI 端口未启用,因此无法检测到电视/显示器。通常情况下,HDMI 端口应该可以检测到新硬件并自动启用,但不幸的是,在我的硬件上并没有发生这种情况。

因此解决方案是在启动时手动启用 HDMI 端口。例如,您有

/sys/class/drm/card0-HDMI-A-1/enabled   disabled
/sys/class/drm/card0-HDMI-A-2/enabled   disabled

因此,如果您在启动期间在 grub 中将这些参数添加到内核

video=HDMI-A-1:e video=HDMI-A-2:e

应该根据http://distro.ibiblio.org/fatdog/web/faqs/boot-options.html启用两个端口。

之后只需查看实际使用的端口,然后使用以下命令编辑 /etc/default/grub:

GRUB_CMDLINE_LINUX_DEFAULT= ...keep options and add... video=HDMI-A...

赶紧跑

update-grub

它应该可以工作。

例如,我的机器上有 3 个 HDMI 端口,但只有 2 个连接到主板(一个根本无法连接)。如果我启用所有 3 个连接器,最大分辨率为 1024x768,因此我需要找出使用过的两个(在我的情况下是 HDMI-A-2 和 HDMI-A-3,其中 HDMI-A-3 是第一个,HDMI-A-1 与主板断开连接)并在 grub 中仅启用这两个,例如在我的情况下,启动行如下所示 video=HDMI-A-2:e video=HDMI-A-3:e。

目前我使用的是 Gigabyte Z87N-Wifi 主板,其中一台显示器连接 HDMI,电视连接 HDMI。通过这些设置,电视在重启后始终能被检测到。

相关内容