更改 Linux 控制台的默认监视器

更改 Linux 控制台的默认监视器

有没有办法指定 Linux 中控制台显示在哪个显示器上?

详细信息:
我有一套 3 显示器设置和 2 个视频卡。启动计算机时,BIOS 显示在 PCI 显卡上(该显卡有一个小显示器)。启动 Linux 时,控制台显示在同一显示器上。有没有办法让控制台输出到不同的显示器上?我正在使用 vesafb 帧缓冲区。

我没有在 BIOS 中看到更改默认视频卡的方法。

答案1

我认为我们在这里寻找的选项是分配给 fb 设备所需视频输出的号码fbcon=map:n在哪里。n

文档/fb/fbcon.txt对其进行了解释,并提到了con2fbmap在运行时更改它的实用程序。

答案2

至于更改哪个控制台在哪个监视器(帧缓冲区@ /dev/fb x)上运行,您可以下载这个八十行的小型 C 程序,它允许您指定这些内容。

wget https://raw.githubusercontent.com/kunguz/pi3b/master/con2fb.c
gcc con2fb.c -o con2fb.out

下载并编译后,最简单的用法是sudo ./con2fb.out /dev/fb[frame buffer number, starting at 0] /dev/tty[console number, starting at 1]

这会将指定的终端“锁定”到指定的监视器(帧缓冲区),因此当您尝试切换到已分配给监视器的终端时,它会将焦点放在该终端上,而不是将其切换到当前显示器上。

但请记住,帧缓冲区 != 物理显示器。每个想要有单独 tty 的显示器都必须插入单独的显卡(即单独的帧缓冲区)。

另外,如果您不小心,内核可能会崩溃,所以请注意不要试图欺骗程序!;)

答案3

我相信这取决于你使用的窗口管理器。例如启示 具有记住窗口位置的能力。

Fluxbox还支持保存窗口位置和状态。

我不相信 GNOME 可以开箱即用地做到这一点,因为他们认为应该由应用程序开发人员编写可以记住其最后状态的代码。

因此,此功能取决于:

  1. 你正在运行的 Linux 版本
  2. 您正在使用的窗口管理器
  3. 如果你愿意尝试将你的窗口管理器切换到以下某个
  4. 这取决于您最喜欢的 Linux 版本是否支持这些窗口管理器。

相关内容