如何增加TTY控制台的数量?

我经常发现完全从命令行工作很方便,并且喜欢同时打开几个tty“控制台”。
如何使我的系统默认拥有超过传统的6个tty控制台(CTRL-ALT-Fn)?
另外,随着过渡到SystemD和Gnome,tty控制台的数量是否实际下降了?有时我似乎很难打开一个,更不用说多个了,而且经常出现这样的情况:几个(CTRL-ALT-Fn)组合都会导致GUI而不是tty。
我在几台机器上运行Ubuntu 18.04和18.10的组合,如果有关系的话。

2您可能想解释一下为什么您更喜欢虚拟终端而不是X终端应用程序的多标签窗口。通过使用虚拟终端,您可以轻松地拥有任意数量的终端(我通常运行大约20个xfce-terminal标签,分布在每个工作区的三个窗口上)。 - leftaroundabout
2为什么呢?大多数时候我只是更喜欢这样!大部分时间,图形用户界面都闲置不用,孤独地坐在登录屏幕上。 - haziz
不是说我自己不容易表现出这种固执的行为,但客观上看似乎是不理性的。 - leftaroundabout
@leftaroundabout 我实际上并不固执。在我看来,图形用户界面(GUI)的唯一“杀手级应用程序”就是网络浏览器,偶尔还有照片库/照片编辑工具(Adobe Lightroom和我的观鸟数据库应用程序几乎是唯一阻止我完全放弃Windows/Mac的应用程序)。大部分时间我都在命令行下使用Emacs,偶尔会使用ssh、gcc、scheme REPL等命令行工具。如果命令行的网络浏览器更好用(即使我也承认它们并不是很好用),我会选择在命令行上浏览网页。 - haziz
2好吧,我的观点是,{X|gnome|kde}-terminal同样是GUI的必备应用程序!我经常在终端上完成所有操作,但我仍然不想错过窗口管理器以便轻松组织终端标签和窗口。 - leftaroundabout
3个回答

在回答你的问题之前,我更倾向于建议你使用类似于“screen”或“tmux”的工具。
但是如果你坚持要使用“tty”,你可以通过以下方式生成一个新的终端:
sudo systemctl start getty@ttyN.service

其中N是一个尚未使用的数字。

您可以通过编辑/etc/systemd/logind.conf文件并取消注释第一行,将默认启动的tty数量(6)更改为其他数字:

[Login]
NAutoVTs=7

来源:https://wiki.archlinux.org/index.php/Getty

我在几年前简单地尝试过 tmux。但我发现它并不是特别直观。然而,在多个 tty 控制台之间切换却非常简单。我知道这听起来对于一个铁杆 Emacs 粉丝来说很奇怪! - haziz
11@haziz:tmux的优点并不在于它的直观性,而是你可以通过SSH登录进去,然后它会保护你的Shell(s),避免在断开连接时(如果网络中断)意外发生SIGHUP。 - Kevin
这个 (/etc/systemd/logind.conf) 对于我在Ubuntu 18.04 LTS没有增加更多的终端。:( 还有其他修复的方法吗?手动操作是有效的,但我正在寻找一种自动化的方法。 - antivirtel

你不能(除非重新编译内核)。
你的术语使用不正确。你是在询问TTY登录会话。
你有63个可用的内核虚拟终端(KVT)设备。始终如此。要更改这一点,需要重新编译内核,并可能需要处理操作系统中关于主设备号和次设备号的假设所引起的连锁效应。但我怀疑这对你来说已经足够了。
实际上,你要求的是更改在你的系统上启动的TTY登录会话服务的数量。并非所有这63个终端设备都有一个TTY登录会话服务与之关联。你想要更多的登录会话。
是的,行为确实随着systemd而改变。TTY登录服务现在是普通的服务,就像任何其他服务一样——这是AT&T System 5 Release 4在1988年首次引入的创新,Ubuntu世界通过Upstart首次获得了这一功能。
现在在Ubuntu上,systemd-logind会根据需要启动TTY登录会话,因为每个内核虚拟终端都可以通过切换KVT的按键组合来激活。在其配置文件中有控制项,用于限制它执行此操作的KVT编号的上限,并且可以强制始终启动特定编号的KVT的TTY登录会话。
但是,当然你也可以手动启动和启用autovt@name服务。
多个KVT显示GUI实际上与systemd无关,而与多个用户使用GUI登录有关。每个GUI会话都有一个KVT,以便它可以与KVT切换和HID共享进行协作。如果您有多个已登录的GUI会话(至少有一个专用于GUI登录子系统本身),那么将会占用多个KVT。
(我曾经有一个软件用户同样发现TUI WWW浏览器在阅读DocBook文档方面无法胜任,而GUI WWW浏览器可以。所以我写了一个工具。☺)

进一步阅读


你的问题有两个部分。回答你的第二部分:
你担心Ubuntu的tty数量较少是因为GUI被移动到tty1(ctrl + alt + F1)和tty2(ctrl + alt + F2),而不是F7和F8,但默认情况下仍然有相同数量的ttys。