xterm
窗口中运行的文本程序。/dev/cuau0
。init
读取 /etc/ttys
并在可用终端上启动一个 getty
进程。getty
进程负责读取登录名并启动登录程序。FreeBSD 系统上允许登录的端口都列在 /etc/ttys
中。例如,第一个虚拟控制台,ttyv0
,在这个文件中有一个条目,允许在该控制台登录 (login
)。这个文件还包含其他虚拟控制台、串行端口和伪 ttys
的条目。对于一个硬接线终端,串行端口的 /dev
条目被列出,但不包括/dev部分。例如,/dev/ttyv0
被列为 ttyv0
。/etc/ttys
配置了对前四个串口的支持,即 ttyu0
到 ttyu3
:on
) 设备,如果需要,改变端口的安全 (secure
) 设置。如果终端连接到另一个端口,为该端口添加一个条目。/etc/ttys
中配置了两个终端。第一个条目配置了一个连接到 COM2 的Wyse-50。第二个条目配置了一台运行 Procomm 终端软件模拟 VT-100 终端的旧电脑。这台计算机连接到一个多端口串行卡上的第六个串行端口。例 1. 配置终端入口1ttyu1 "/usr/libexec/getty std.38400" wy50 on insecure2ttyu5 "/usr/libexec/getty std.19200" vt100 on insecureCopied!第一个字段指定了串行终端的设备名称。第二个字段告诉getty
初始化并打开线路,设置线路速度,提示用户名,然后执行登录 (login
)程序。可选的 getty 类型 (getty type) 配置了终端线路的特性,如bps速率和奇偶性。可用的getty类型在/etc/gettytab
中列出。几乎在所有情况下,以std
开头的 getty 类型都适用于硬接线终端,因为这些条目忽略了奇偶性。从 110 到 115200 的每个bps速率都有一个std
条目。更多信息请参考 gettytab(5)。当设置 getty 类型时,确保与终端使用的通信设置相匹配。在这个例子中,Wyse-50 使用无奇偶校验,以 38400 bps 连接。计算机使用无奇偶校验,以 19200 bps 连接。第三个字段是终端的类型。对于拨号端口,通常使用未知 (unknown
) 或拨号 (dialup
),因为用户几乎可以用任何类型的终端或软件进行拨号。由于硬接线终端的终端类型不会改变,可以从/etc/termcap
中指定一个真实的终端类型。在这个例子中,Wyse-50 使用真实的终端类型,而运行 Procomm 的计算机被设置为模拟 VT-100。第四个字段指定该端口是否应被启用。要在这个端口上启用登录,这个字段必须设置为开 (on
)。最后一个字段用于指定该端口是否安 (secure
) 全。将一个端口标记为安全意味着它被信任到足以允许root
从该端口登录。不安全的端口不允许root
登录。在不安全的端口上,用户必须从非特权账户登录,然后使用su
或类似的机制来获得超级用户的权限,如 《超级用户账户》中所述。出于安全考虑,建议将此设置改为不安全 (inscure
)。
/etc/ttys
进行任何修改后,向 init
进程发送一个 SIGHUP(挂起)信号,迫使它重新读取其配置文件:init
总是系统上运行的第一个进程,它的进程 ID 总是1。getty
进程在运行,每个终端上都应该有登录提示。ps
确保 getty
进程正在运行并为终端服务。例如,下面的列表显示一个 getty
正在第二个串口 ttyu1
上运行,并使用 /etc/gettytab
中的 std.38400
条目:getty
进程在运行,请确保该端口在 /etc/ttys
中被启用。记住在修改 /etc/ttys
后运行 kill -HUP 1
。getty
进程正在运行,但终端仍然不显示登录提示,或者显示提示但不接受键入的输入,终端或电缆可能不支持硬件握手。试着将 /etc/ttys
中的条目从 std.38400
改为 3wire.38400
,然后在修改 /etc/ttys
后运行 kill -HUP 1
。3wire
条目与 std
类似,但忽略了硬件握手。在使用 3wire
时,可能还需要降低 bps 或启用软件流控制,以防止缓冲区溢出。getty
进程,确保使用了正确的 getty
类型。如果没有,编辑 /etc/ttys
并运行 kill -HUP 1
。