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

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

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

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

答案1

查看多路复用器和/或屏幕。可以在以下网站上找到满足基本相同需求的两个程序的比较tmux 常见问题解答

Hawk Host 上有一篇非常好的 tmux 入门博客文章:TMUX 终端复用器 第1部分第2部分

如果您想更多地了解 tmux 的多功能性,有一本不错的书/电子书,它以悠闲的速度涵盖了很多内容:tmux:高效的无鼠标开发作者:布莱恩·P·霍根。

答案2

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

通过这个包,您可以在虚拟终端中获得 x-fonts,您可以在相同的环境中获得 ptys 和会话切换 - 所有这些都是由控制虚拟终端的同一服务提供的,因为您启动的是kmscon而不是getty,例如。

当然,任何终端多路复用器(例如screen或 )tmux都是完全兼容的 - 它们在控制方面比此低几个步骤。kmscon只是相当于比其他方式更明智的 vt 配置 - 并且它提供了您希望的任意数量的会话。

来自 tarball 的自述文件:

=凯姆斯康=

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 加速视频输出,必须安装以下软件:libdrm, libgbm, egl,glesv2 (即台面)

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

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

  • unifont:静态字体,无需外部依赖。

  • pango:用pango绘制文本

    • Pango 需要:glibpangofontconfigfreetype2以及更多

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

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

答案3

您可以screen从控制台运行。它将提供多个终端。您甚至可以分屏以同时查看多个终端。

一些相关screen命令是:

   C-a c
   C-a C-c     (screen)      Create a new window with a shell and switch to that window.

   C-a Q       (only)        Delete all regions but the current one.  See also split, remove, focus.

   C-a S       (split)       Split the current region horizontally into two new ones.  See also only, remove, focus.

   C-a w
   C-a C-w     (windows)     Show a list of window.

   C-a X       (remove)      Kill the current region.  See also split, only, focus.

   C-a |       (split -v)    Split the current region vertically into two new ones.

请注意,大小写很重要:control-a S将分割该区域,但control-a s完全执行其他操作。

screen要在 debian(或类似版本)上安装,请运行apt-get install screen.

答案4

沿途tmuxscreen值得一提byobu

相关内容