ove*_*nge 8 linux terminal history console
在 1970 年代,我们拥有用于输入/输出的带有 CUI(字符用户界面)界面的硬件终端。
现在,我们有终端仿真器(Ctrl+ Alt+ Fn)在Unix / Linux操作系统的世界。
在Ubuntu OS,I看到7的终端仿真器,其中,GUI被占据第七终端仿真器(Ctrl+ Alt+ F7)。
例如,这是我的第一端子(Ctrl+ Alt+ F1)仿真器
$ tty
/dev/tty0
Run Code Online (Sandbox Code Playgroud)
为什么 Unix/Linux 提供多个终端模拟器?
War*_*ung 25
为什么 UNIX/Linux [在控制台上] 提供多个终端模拟器?
出于同样的原因,您的 GUI 终端模拟器可能支持选项卡(例如 GNOME 终端),如果不支持(例如rxvt
),那么出于同样的原因,启动第二个 GUI 终端应用程序实例不只是将第一个拉到前台并退出,强迫你使用第一个实例。
我在工作中经常使用至少 3 个终端窗口,而且通常更多:
我正在处理的系统服务器端的文本编辑器
同一系统客户端的文本编辑器
用于运行服务器的命令窗口
我很少需要第四个终端来运行客户端程序,因为它通常在其他地方运行(Web 应用程序、本机 GUI 应用程序、移动应用程序等),但是如果我为我的服务器应用程序开发 CLI 客户端,我会有一个也为它打开了单独的终端。
过去,在sudo
流行之前,我一直保持一个root
终端打开。
这些天我很少在没有 GUI 的控制台上以交互方式使用 Unix/Linux 机器,但我确实经常无头运行它们并通过 SSH 访问它们。我选择的 SSH 终端客户端支持选项卡,配置如上。
我目前的一个爱好项目让我偶尔使用一个真正的旧玻璃终端,这意味着我不再有多个终端窗口,所以我终于了解了一些关于GNU 的知识screen
,这是一个我以前从未用过的程序,因为我有多个控制台终端或多个 GUI 终端。有什么作用screen
?除此之外,您可以将其配置为在单个屏幕上为您提供多个虚拟终端,就像 Linux 对Ctrl- Alt-所做的那样。Fx
jll*_*gre 18
这是几乎所有 Unix 和 Unix 都提供的功能,如在 x86 硬件上运行。有趣的是,80 年代初期,Microsoft Xenix 首次在 Unix 中引入了虚拟控制台,并且在并发 CP/M 中也可用。
此功能后来被集成到 AT&T SVR4 Unix、Solaris 中,并被 BSD 和 Linux 借用。
为什么 UNIX/Linux 提供多终端模拟器?
当它们第一次被引入时,运行这些 Unix 实现的机器没有可用的图形环境。虽然通过 RS232 线将物理终端连接到中央 Unix 服务器是标准配置,但如果目标只是让单个用户同时运行多个交互式程序,那么将多个终端连接到运行 Xenix 的标准 PC 就显得过分了。虚拟终端为这个问题提供了一个优雅而方便的解决方案。
后来其他 Unix 实现提供了相同的功能来满足相同的需求。
当图形环境,尤其是 X11 展开时,能够在同一屏幕上同时看到多个终端仿真器是一项重大改进。然而,虚拟控制台功能通常会保留,只是因为如果图形环境由于某种原因冻结或功能失调,仍然可以方便地切换到控制台。
请注意,实用程序 likescreen
和tmux
比虚拟终端晚得多来概括相同的功能。它们的优点是它们不仅可以用于本地物理控制台,还可以用于本地或远程的任何会话(例如telnet
,ssh
)。在物理控制台上使用时,虚拟控制台仍然很有用,因为它们在screen
/tmux
无法提供帮助的某些情况下仍然有效,例如 X11 被冻结,或者窗口已捕获焦点但未释放焦点。
基于容器的虚拟化(如 Solaris 区域或 Linux LXC)也提供了一种分别通过zlogin -C zone
和连接到容器控制台的方法lxc-console -t 0 -n container
。