Linux终端和控制台针对虚拟设备进行了解释

终端是您键入隐秘Linux命令的接口,但是终端仅仅是Linux桌面上带有命令提示符的窗口吗? 好吧,事实是,您现在使用的终端可能不是真正的终端。 在本文中,我将解释Linux终端和控制台的真正含义。 如果您想精通Linux,那么了解此基本概念非常重要。

终端是人与计算机之间的接口

终端作为名词,具有多种含义。 Merriam-Webster词典在计算领域为终端提供了一个很好的定义:

键盘和输出设备(例如视频显示单元)的组合,通过它可以将数据输入到计算机或电子通信系统中或从计算机或电子通信系统中输出。

人与计算机是两个独立的实体。 人类需要一个接口来将信息放入计算机并从中读取输出。 如今,个人计算机的输入设备包括:键盘,鼠标和麦克风。 输出设备包括监视器和扬声器。 它们通常称为外围设备。 但是在Unix和Linux世界中,输入和输出设备称为终端。 终端的对面是主机,其中包括CPU,RAM,HDD等设备。

因此,现在我们有两个方程式。

Computer = Host + Terminal

Terminal = Input device + Output device

第一航站楼

个人计算机在1970年代后期进入日常生活。 在此之前,我们只能在大公司或大学中使用昂贵的大型机和小型计算机。 肯·汤普森(Ken Thompson)和丹尼斯·里奇(Dennis Ritchie)(Unix的两个创造者)在1965年使用的PDP-7微型计算机的价格为7.2万美元,而GE-45大型机的价格为1000万美元。

Ken Thompson和Dennis Ritchie希望使Unix成为多用户操作系统,这意味着每个用户都将有一个连接计算机的终端。 每个用户都需要一个监视器和键盘。 但是,当时包括显示器在内的每台计算机设备都非常昂贵。 键盘实际上是连接到计算机的。 那时没有可拆卸的键盘。

因此,他们找到了另一种解决方案:使用便宜的ASR33电传打字机作为终端。 电传打字(TTY)主要用于在电报中发送和接收键入的消息,但是它们也可以用于将信息放入计算机并从中获取信息。 您可以使用键盘输入信息并在纸张上打印输出。

ASR33电传打字机

许多电传打字机都连接到一台Unix计算机。 每个用户都可以使用自己的用户名和密码(位于自己的电传打字机前面)登录Unix。 因此Unix成为第一个多用户操作系统,而ASR33成为第一个Unix终端。 由于这个事实,缩写TTY通常用于表示Unix / Linux中的终端。

多年来,终端变得越来越先进。 1970年,DEC(数字设备公司)推出了VT05视频终端。 它有一个带视频屏幕的监视器,用于输出。

Linux终端和控制台针对虚拟设备进行了解释

VT05视频终端

字符终端与图形终端

字符终端也称为文本终端,它只能输出基于文本的信息。 电传打字机是字符终端。 最著名的字符终端是DEC在1978年生产的VT100。它的设计非常好,因此成为后来的终端的标准。

图形终端更好,因为它也可以在屏幕上显示图形/图片。 最著名的图形终端是X终端,它为X窗口系统提供了基本支持。

Linux终端仿真器

现在您知道终端是硬件。 在1970年代和1980年代,人们在真正的终端机前键入命令。 如今,我们经常在软件终端中键入命令,该终端通常称为终端仿真器或终端仿真应用程序。 有时人们称它们为虚拟终端。 它们不是真正的终端,但是操作系统认为它们是真实的。

如果使用Gnome终端,则可以运行以下命令来阅读 gnome-terminal

man gnome-terminal

它告诉你 gnome-terminal 是终端仿真应用程序。 它模仿Xterm。

gnome terminal是一个终端仿真应用程序

Xterm还是终端仿真器。 它模拟DEC生产的VT102端子。 现在,您仍然可以在Linux发行版中找到Xterm。

什么是控制台?

在1970年代和1980年代,终端通常通过电线连接到主机,但是有一个特殊的终端连接到主机。 这个特殊的终端称为控制台。 它仅由管理员使用。 每台计算机只有一个控制台。 标准终端和控制台之间在外观上并没有太大区别,但是控制台可以执行标准终端无法做到的事情。 例如,如果操作系统无法启动,则控制台上会显示错误消息,而其他终端上不会。 而且,如果操作系统引导到单用户模式,则只能使用控制台登录。 其他终端无权以单用户模式登录。

PDP-7小型电脑控制台

PDP-7小型电脑控制台

控制台和终端通常被视为个人计算机上的同义词。 您的显示器和键盘既是控制台,又是终端。 您可以随时在标准用户和管理员之间切换。

虚拟控制台

实际上,有两种类型的终端仿真器。 第一种类型是您在桌面环境中打开的终端窗口。 另一种类型是虚拟控制台。 在1970年代和1980年代,人们通常只能使用一个终端。 公司或大学中的重量级人员可以使用多个终端,因为他们需要使用操作系统执行许多操作。 因此,他们的办公桌上将有几个终端。

如今,我们不需要在桌面上放置多个终端,因为Linux可以创建多个虚拟终端。 其中之一是图形终端,另外六个是字符终端。 这7个虚拟终端通常称为虚拟控制台,它们使用相同的键盘和监视器。 物理控制台是显示器和键盘的组合。 Linux启动时,它将创建7个虚拟控制台,默认情况下会带您到图形控制台,即桌面环境。 您可以运行 who 命令以检查您正在使用哪个虚拟控制台。

who

linux虚拟控制台

如您所见,我正在使用第7个虚拟控制台(tty 7)。 如果要切换到角色虚拟控制台,只需按 Ctrl+Alt+ F1, 要么 Ctrl+Alt+ F2…。 Ctrl+Alt+F6。 要切换回图形虚拟控制台,请按 Ctrl+Alt+F7

虚拟控制台什么时候有用? 如果由于某种原因您的桌面环境没有响应或桌面上的图标/任务栏突然消失,则可以切换到角色虚拟控制台,然后键入命令以诊断问题。

注意:在Fedora上, tty1 是默认的图形虚拟控制台。

什么是壳牌

终端只是一种传递信息的机制。 为了使操作系统了解该信息,需要一个外壳程序。 Linux中的Shell是一个程序,该程序解释您在终端窗口中输入的命令,因此操作系统可以理解您想做什么。

有许多Shell程序,例如Bash,Zsh,Csh,Ksh等。Bash是大多数Linux发行版中的默认Shell。 当您打开终端窗口时,将自动启动Bash shell。 要检查您现在正在使用哪个shell,请运行以下命令。

echo $0

linux bash默认shell

终端与主机之间的距离

终端可以直接连接到便携式计算机上的主机。 终端也可以通过有线方式连接到主机,例如台式计算机。 实际上,终端也可以通过网络连接到主机。 例如,如果您在局域网中有两台计算机。 其中之一运行Linux。 您可以使用另一台计算机通过SSH或VNC登录Linux计算机。 因此,Linux计算机是主机,另一台计算机是终端。

数据中心中运行的虚拟专用服务器(VPS)没有自己的终端(键盘或显示器)。 没有终端的主机称为无头系统。 如果您在数据中心中运行了VPS,则可以使用SSH远程登录VPS,因此您的本地计算机将成为VPS主机的终端。

包起来

我希望本文能帮助您了解Linux终端,控制台和外壳程序。 与往常一样,如果您发现此帖子有用,请订阅我们的免费新闻通讯以获取更多提示和技巧trick

Sidebar