当前位置: 首页>>技术问答>>正文


什么是tty,我如何访问tty?

, ,

问题描述

我一直听说这些被称为tty的东西。

  • 这些是什么

  • 我该如何访问它们

  • 他们在做什么?

最佳解决思路

tty是那些打印连接到标准输入的终端名称的时髦Unix命令之一。

TTY是text-only终端,通常用作访问计算机以修复内容的方法,而无需实际登录到可能的b0rked桌面。

相关:What is tty7 in the commandline?

默认情况下,Ubuntu有7个tty。

  • 直到Ubuntu 17.10,1-6仅为命令行,7运行您的X会话(您的普通桌面)。

  • 在Ubuntu 17.10及更新版本上,它是1上的GUI登录屏幕,2上的GUI桌面和3-7上的命令行。

要访问它们,请使用此键盘快捷键:

Ctrl + Alt + F1(或17.10及更高版本的F3)

(将F1更改为F1-F6以访问您想要的终端)

要返回GUI会话(普通桌面):

Ctrl + Alt + F7(或17.10及更高版本的F2)

次佳解决思路

例如,您可以通过命令行更改显示的TTY,其中包括chvt(需要sudo权限)。以下是联机帮助页的相关部分(man chvt):

CHVT(1)

NAME

chvt – change foreground virtual terminal

SYNOPSIS

chvt N

DESCRIPTION

The command chvt N makes /dev/ttyN the foreground terminal. (The corresponding screen is created if it did not exist yet. To get rid of unused VTs, use deallocvt) The key combination (Ctrl-)LeftAlt-FN (with N in the range 1-12) usually has a similar effect.

第三种解决思路

tty,teletype的缩写,也许通常称为终端,是一种允许您通过发送和接收数据(例如命令及其产生的输出)与系统交互的设备。

有很多类型,但现在大多数ttys都是用软件实现的,例如你可以用Ctrl + Alt + Fn访问的图形控制台,或者在X会话中运行的终端模拟器,如Gnome终端。

还有一个tty命令,它显示运行它的终端的设备节点(如果它没有在终端内运行,则打印“not tty”;是的,可以在终端外运行命令)。例如:

firas@itsuki ~ % tty
/dev/pts/0
firas@itsuki ~ % ssh localhost tty
not a tty

当我登录并在机器上运行shell时,shell通常在终端内运行,即这里是/dev/pts/0。但是,当我运行ssh host command以在远程主机上运行命令时,该命令不会在终端内运行。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/2003.html,未经允许,请勿转载。