无需X服务器即可同时使用多个终端

use*_*710 7 linux terminal tty

有没有一种方法可以在不运行 Xorg 会话的情况下同时可视化多个终端?

我有一台非常低调的机器,它可以很好地处理一些基本的东西,但在驱动程序和计算能力方面对 GPU 的支持却很糟糕。

use*_*877 15

查看tmux和/或screen。可以在tmux FAQ 中找到满足基本相同需求的两个程序的比较。

Hawk Host: TMUX the terminal 多路复用器 part 1 and part 2 上有一篇很好的开始使用 tmux 的博客文章。

如果您想更多地了解 tmux 的多功能性,这里有一本不错的书/电子书,它以悠闲的速度涵盖了很多领域:tmux: Brian P. Hogan 的Productive Mouse-Free Development

  • 是的,它确实。它是 screen 的现代化版本,具有更简单的配置语法(但它缺少一些 screen 的功能)。tmux的第一个【FAQ】(http://sourceforge.net/p/tmux/tmux-code/ci/master/tree/FAQ)比较了两者。 (2认同)
  • 不知道为什么这没有更多 upvoats,tmux 是您可以在没有实际 gui 的情况下获得选项卡式终端模拟器的最接近的东西,更不用说您可以与其他用户共享虚拟术语以显示您在做什么。前几天我用它来引导新用户通过 ssh 安装 archlinux,我在美国,他们在澳大利亚,这是非常有用的工具。 (2认同)

mik*_*erv 5

您可以安装kmscon它在控制台中实现内核模式设置图形处理。它的开发者 - David Herrman - 是主要负责systemd多座席会话处理的一方,并且这个功能在他自己的kmscon包中提供。他还主要负责wlterm和类似的 multiseeat 会话处理wayland (顺便说一下,如果你发现X它太重,可能值得研究) ......

使用这个包,你可以在虚拟终端中获得 x-fonts,你可以同时获得 ptys 和 session-switching - 所有这些都是由控制虚拟终端的同一个服务提供的,因为你启动kmscon而不是一个getty,例如。

任何终端多路复用器,例如screentmux当然是完全兼容的——它们在控制方面比这低几步。kmscon只是比您获得的更明智的 vt 配置 - 它提供了您希望的尽可能多的会话。

来自 tarball 的自述文件:

= KMSCON =

kmscon是一个基于linux内核模式设置(KMS)的简单终端模拟器。它试图用用户空间控制台替换内核 VT 实现。有关man 1 kmscon使用信息,请参阅。

== 要求 ==

Kmscon 需要以下软件:

  • libtsm: 终端模拟器状态机

  • libudev: 提供输入、视频等设备热插拔支持 (>=v172)

  • libxkbcommon:提供国际化的键盘处理

  • libdrm: 图形访问 DRM/KMS 子系统

  • linux-headers: ABI 定义的 linux 内核头文件

其他一切都是可选的:

对于视频输出,至少需要以下一项:

  • fbdev:对于帧缓冲视频输出,内核头文件必须安装并位于默认包含路径中。

  • DRM:对于未加速的 drm 输出,libdrm必须安装库并通过pkg-config.

  • OpenGLES2:对于通过 OpenGLESv2 的加速视频输出,必须安装以下内容:libdrmlibgbmeglglesv2 (即台面)

对于字体处理,需要以下内容:

  • 8x16:8x16 字体是一种静态内置字体,不需要外部依赖。

  • unifont: 没有外部依赖的静态字体。

  • pango: 用 pango 绘制文本

    • Pango 需要:glib, pango, fontconfig,freetype2等等

对于多座位支持,您需要以下软件包:

  • systemd: 实际上只systemd-logind需要守护进程和库。