什么是tty,我如何访问tty?
我一直听说这些被称为tty
的东西。
-
这些是什么
-
我该如何访问它们
-
他们在做什么?
tty是那些时髦的Unix命令之一,它打印(或显示)标准输出连接到标准输入的终端的名称。
这些通常用作访问计算机以修复问题的方法,而无需实际登录到可能的b0rked桌面。
相关: 命令行中的tty7是什么?
默认情况下,Ubuntu有7个tty。
1-6
只是命令行, 7
运行你的X会话(你的普通桌面)。 (在Ubuntu 17.10和更新版本上,它位于1
GUI登录界面, 1
GUI桌面和其余的命令行。)
要访问它们,请使用此键盘快捷键:
Ctrl + Alt + F1 (或17.10及更高版本的F3 )
(将F1
更改为F1-F6以访问您想要的终端)
要返回X会话(普通桌面),
Ctrl + Alt + F7 (或17.10及更高版本的F2 )
例如,您可以通过带有chvt
(需要sudo
权限)的sudo
行更改显示的TTY。 这是联机帮助页面的相关部分( man chvt
):
CHVT(1)
名称
chvt – 改变前台虚拟终端
概要
chvt N.
描述
命令chvt N使/ dev / ttyN成为前台终端。 (如果它还不存在,则创建相应的屏幕。要消除未使用的VT,请使用deallocvt)组合键(Ctrl-)LeftAlt-FN(N在1-12范围内)通常具有类似的效果。
tty, teletype的缩写,也许通常称为终端 ,是一种允许您通过发送和接收数据(例如命令及其产生的输出)与系统交互的设备。
有很多类型的ttys,但是现在大多数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
在远程主机上运行命令时,该命令不会在终端内运行。
它会更改您的工作区:例如,您可以打开文本文件并更改为tty2,然后您可以使用/ ls命令进行参考。 这对于像Ubuntu Server这样的环境非常有用。
这相当于在GUI环境中打开两个选项卡。
在Ubuntu Server(16.04.3 LTS – 对我来说)我可以使用ALT + F1-F6或使用ALT + LeftArrow返回一个数字或ALT + RightArrow来转发一个数字。
您可以通过从Ubuntu Server logout
(运行logout
)来查看您的tty,并查看标准的顶级Ubuntu 16.04.3 LTS ubuntu tty#
,但可能因版本而异。
如果您的tty没有显示在您的登录屏幕上,那么您可以运行sudo nano /etc/issue
,在顶部,您可以放入您喜欢的任何内容,但添加您需要放置的文件\l
。 放置\n
作为主机名。
例:
在/ etc /问题
Ubuntu 16.04.3 LTS \n \l
会表明
Ubuntu 16.04.3 LTS ubuntu tty#
笔记:
#
指的是一个数字