我一直在读高级Linux编程书籍它提到了虚拟终端,如果我理解正确的话,它是 Linux 特定的功能(不是 Unix),允许在非 X11 系统中使用多个登录控制台。您可以通过按 ALT-F2 创建虚拟终端。我正在运行 Linux Mint,在我的 /dev 文件夹中,尽管我看到很多 tty 设备,但我不知道它们的用途。这是 grep 的输出:
crw-rw-rw- 1 root tty 5, 0 Jan 2 19:45 tty
crw--w---- 1 root tty 4, 0 Jan 2 19:10 tty0
crw-rw---- 1 root tty 4, 1 Jan 2 19:10 tty1
crw--w---- 1 root tty 4, 10 Jan 2 19:10 tty10
crw--w---- 1 root tty 4, 11 Jan 2 19:10 tty11
crw--w---- 1 root tty 4, 12 Jan 2 19:10 tty12
crw--w---- 1 root tty 4, 13 Jan 2 19:10 tty13
crw--w---- 1 root tty 4, 14 Jan 2 19:10 tty14
crw--w---- 1 root tty 4, 15 Jan 2 19:10 tty15
crw--w---- 1 root tty 4, 16 Jan 2 19:10 tty16
crw--w---- 1 root tty 4, 17 Jan 2 19:10 tty17
crw--w---- 1 root tty 4, 18 Jan 2 19:10 tty18
crw--w---- 1 root tty 4, 19 Jan 2 19:10 tty19
crw-rw---- 1 root tty 4, 2 Jan 2 19:10 tty2
crw--w---- 1 root tty 4, 20 Jan 2 19:10 tty20
crw--w---- 1 root tty 4, 21 Jan 2 19:10 tty21
crw--w---- 1 root tty 4, 22 Jan 2 19:10 tty22
crw--w---- 1 root tty 4, 23 Jan 2 19:10 tty23
crw--w---- 1 root tty 4, 24 Jan 2 19:10 tty24
crw--w---- 1 root tty 4, 25 Jan 2 19:10 tty25
crw--w---- 1 root tty 4, 26 Jan 2 19:10 tty26
crw--w---- 1 root tty 4, 27 Jan 2 19:10 tty27
crw--w---- 1 root tty 4, 28 Jan 2 19:10 tty28
crw--w---- 1 root tty 4, 29 Jan 2 19:10 tty29
crw-rw---- 1 root tty 4, 3 Jan 2 19:10 tty3
crw--w---- 1 root tty 4, 30 Jan 2 19:10 tty30
crw--w---- 1 root tty 4, 31 Jan 2 19:10 tty31
crw--w---- 1 root tty 4, 32 Jan 2 19:10 tty32
crw--w---- 1 root tty 4, 33 Jan 2 19:10 tty33
crw--w---- 1 root tty 4, 34 Jan 2 19:10 tty34
crw--w---- 1 root tty 4, 35 Jan 2 19:10 tty35
crw--w---- 1 root tty 4, 36 Jan 2 19:10 tty36
crw--w---- 1 root tty 4, 37 Jan 2 19:10 tty37
crw--w---- 1 root tty 4, 38 Jan 2 19:10 tty38
crw--w---- 1 root tty 4, 39 Jan 2 19:10 tty39
crw-rw---- 1 root tty 4, 4 Jan 2 19:10 tty4
crw--w---- 1 root tty 4, 40 Jan 2 19:10 tty40
crw--w---- 1 root tty 4, 41 Jan 2 19:10 tty41
crw--w---- 1 root tty 4, 42 Jan 2 19:10 tty42
crw--w---- 1 root tty 4, 43 Jan 2 19:10 tty43
crw--w---- 1 root tty 4, 44 Jan 2 19:10 tty44
crw--w---- 1 root tty 4, 45 Jan 2 19:10 tty45
crw--w---- 1 root tty 4, 46 Jan 2 19:10 tty46
crw--w---- 1 root tty 4, 47 Jan 2 19:10 tty47
crw--w---- 1 root tty 4, 48 Jan 2 19:10 tty48
crw--w---- 1 root tty 4, 49 Jan 2 19:10 tty49
crw-rw---- 1 root tty 4, 5 Jan 2 19:10 tty5
crw--w---- 1 root tty 4, 50 Jan 2 19:10 tty50
crw--w---- 1 root tty 4, 51 Jan 2 19:10 tty51
crw--w---- 1 root tty 4, 52 Jan 2 19:10 tty52
crw--w---- 1 root tty 4, 53 Jan 2 19:10 tty53
crw--w---- 1 root tty 4, 54 Jan 2 19:10 tty54
crw--w---- 1 root tty 4, 55 Jan 2 19:10 tty55
crw--w---- 1 root tty 4, 56 Jan 2 19:10 tty56
crw--w---- 1 root tty 4, 57 Jan 2 19:10 tty57
crw--w---- 1 root tty 4, 58 Jan 2 19:10 tty58
crw--w---- 1 root tty 4, 59 Jan 2 19:10 tty59
crw-rw---- 1 root tty 4, 6 Jan 2 19:10 tty6
crw--w---- 1 root tty 4, 60 Jan 2 19:10 tty60
crw--w---- 1 root tty 4, 61 Jan 2 19:10 tty61
crw--w---- 1 root tty 4, 62 Jan 2 19:10 tty62
crw--w---- 1 root tty 4, 63 Jan 2 19:10 tty63
crw--w---- 1 root tty 4, 7 Jan 2 19:10 tty7
crw--w---- 1 root tty 4, 8 Jan 2 19:10 tty8
crw--w---- 1 root tty 4, 9 Jan 2 19:10 tty9
答案1
这些具体是虚拟控制台Linux 术语中的设备。在同一物理设备上支持虚拟控制台并不是 Linux 独有的(例如,BSD称它们为“硬件终端端口”)。
Linux 没有按需创建控制台设备的机制。 63 个控制台并不总是处于活动状态(您需要激活ttyN
才能使用 ( Ctrl+) Alt+切换到它FN),但要激活其中一个需要打开控制台设备(openvt
命令可以做到这一点,就像getty
和 X 服务器)。所以设备条目必须一直存在,否则必须手动创建才能使用。
现代 Linux 系统(使用 udev 或 devtmpfs)为系统上存在的每个设备创建设备条目。所有虚拟控制台始终存在(无论它们是否处于活动状态),因此会创建所有条目。大多数用户不需要那么多——事实上,大多数用户除了 X 运行的虚拟控制台之外什么都看不到。但也有一些人这样做,并且需要修补他们的内核以允许超过 63 个控制台,因为他们运行带有许多硬件控制台的大型机器)。
答案2
这不是 Linux 特有的东西,而且 tty 不仅仅用于虚拟终端。例如,当您进入图形界面后启动 xterm 时,也会使用它们。如果 tty 设备较少,您将无法进行多次 xterm 或 ssh 登录。