访问更高的 TTY 和 getty 的作用

访问更高的 TTY 和 getty 的作用

当我试图理解 TTY 时,我遇到了一些黑暗的地方。

  • 在我的系统上,我有/dev/tty[1-63].正在udev创建这些字符设备吗?我如何访问它们(例如可以使用 Ctrl+Alt+F2 访问 tty2)?/dev/tty40例如我如何访问?

  • 据我了解,当我访问 时/dev/tty1agetty被调用,然后调用login.agetty调用之外的真正作用是什么login

答案1

这些都是虚拟控制台,在 Linux 中称为虚拟终端(VT)。有一个硬件控制台(一个屏幕和一个键盘),但 Linux 假装有多个(多达 63 个)。在给定的时间点,单个 VT 是积极的;键盘输入被路由到该控制台,屏幕显示该控制台显示的内容。

你可以使用命令chvt在 VT 之间切换(您需要直接访问当前的虚拟控制台,如果远程登录或在 X 下运行则无法访问)。您还可以使用通过loadkeysX 服务器加载的键映射设置的键绑定。默认情况下,X外,Alt+切换到控制台号码FnnAlt++Shift切换到控制台号码Fnn+12;Alt+LeftAlt+Right切换到上一个/下一个控制台。

需要一个控制台已分配以便切换到它。您可以使用openvt分配一个控制台(这需要 root)和deallocvt取消分配一个。

该程序盖蒂与虚拟控制台没有直接关系,特别是与VT分配无关。 getty 的作用是准备控制台(设置串行端口参数,可能使屏幕空白,显示欢迎消息等)并调用login,然后等待登录会话终止并重复。简单来说,getty的作用就是login循环调用。

您不必运行 getty 即可使用控制台。例如,您可以使用 启动控制台上的任何程序openvt。您可以使用 来在新控制台上启动 X 服务器startx

相关内容