对于终端 , init 会在每个配置串行口上为每个拨入连接产生一个getty 进程 。例如 ,
如果一个modem 被附带在/dev/ttyd0 中 , 用命令ps ax 可以显示下面这些:
4850 ?? I 0:00.09 /usr/libexec/getty V19200 ttyd0
当一个用户拨上modem , 并使用它进行连接时 , CD 线就会被modem 认出 。内核注意到载
波信号已经被检测到 , 需要完成getty 的端口的打开 。Getty 发送一个登陆:在指定的初始
线速度上的命令行 。Getty 会检查合法的字符是否被接收 , 在一个典型的配置中 , 如果发现
垃圾 , getty 就会设法调节线速度 , 直到它接收到合理的字符 。
用户在键入他/她的登陆名称后 , getty 执行/usr/bin/login , 这会要求用户输入密码
来完成登陆 , 然后启动用户的shell 。
15.4.4 配置文件
在/etc 目录中 , 有三个你将需要编辑的系统配置文件 , 来允许拨号访问到你的FreeBSD
系统 。第一 , /etc/gettytab 包含了针对/usr/libexec/getty 守护程序的配置信息 。第二 ,
保存信息来告诉/sbin/init 什么tty 设备将有运行在他们系统上的getty 进程 。最后 , 你
可以把端口初试化命令放在/etc/rc.serial 脚本中 。
在unix 上 , 关于拨号modem 的想法主要有两种 。一种是把本地接口配置成一个固定速
率 , 以至一个远程用户拨号进入时都保持一个固定速率 。这样配置的好处是远程用户总是可
以立即看到一个系统的登陆界面 。这种下降趋势是系统不知道一个用户真正的数据速率是多
少 , 所以象eamcs 全屏程序将不会调接屏幕刷新来确保对比较慢的连接有比较好的回应 。
其他的配置RS-232 modem 的方法是随着远程用户连接的速度的变化而变化 。例如 , 连
接到modem 的V.32bis (14.4 Kbps)连接可以使modem 在19.2 Kbps 上运行RS-232 接口 ,
而连接使得RS-232 接口运行在2400 bps 上 。
第12 页FreeBSD 使用手册
因为getty 不了解任何特殊的modem 的连接速度报告 , getty 会给出一个登陆:在一个
初始速度和检测字符的信息会作出回应 。如果用户看到垃圾 , 假定他们知道他们键入了
enter 键 , 知道他看到了一个熟悉的命令行界面 。
如果数据速率不相匹配 , getty 会把用户键入的任何东西都看作“junk” , 设法回到下
面的速度 , 然后给出登陆:命令行界面 。很明显 , 这个登陆顺序看起来不如locked-speed
的方法 , 但一个连接在低速率上的用户将更好地交互接收来自全屏幕程序的回应 。
15.4.4.1 /etc/gettytab
/etc/gettytab 是一个用来配置getty 信息的termcap 风格的文件 。请看看gettytab
的联机手册了解完整的文件格式和功能列表 。
15.4.4.1.1 锁定速率的配置
如果你把你的modem 的数据通讯率锁定在一个特殊的速率上 , 你不需要对
/etc/gettytab 文件做任何变化 。
15.4.4.1.2 匹配速率的配置
你将需要在/etc/gettytab 中设置一个记录来给出getty 的你希望用到你的modem 上的
有关速度的信息 。如果你有一个2400 bps 的modem,你可以使用已存在的D2400 的记录 。
#
# Fast dialup terminals, 2400/1200/300 rotary (can start either way)
#
D2400|d2400|Fast-Dial-2400:
:nx=D1200:tc=2400-baud:
3|D1200|Fast-Dial-1200:
:nx=D300:tc=1200-baud:
5|D300|Fast-Dial-300:
:nx=D2400:tc=300-baud:
第13 页FreeBSD 使用手册
如果你有一个更高速度的modem , 你必须在/etc/gettytab 中添加一个记录;这儿是一
个你可以使用的一个最高19.2 Kbps 的接口用在14.4 Kbps 的modem 上的记录:
#
# Additions for a V.32bis Modem
#
um|V300|High Speed Modem at 300,8-bit:
:nx=V19200:tc=std.300:
un|V1200|High Speed Modem at 1200,8-bit:
:nx=V300:tc=std.1200:
uo|V2400|High Speed Modem at 2400,8-bit:
推荐阅读
- 在FreeBSD 4.0下安装USB鼠标支持
- 2 FreeBSD handbook中文版 11 打印 高级打印机设置 B.Header Pages
- FreeBSD 4.0 Kernel Hacking Guide--vm/vm_object.c
- NDIS wrapper for FreeBSD 5.2 CURRENT
- 如何压缩FreeBSD内核
- FreeBSD 4.0 Kernel Hacking Guide--i386/i386/machdep.c
- FreeBSD紧急救援状况的应变措施
- freebsd 文件类型表示
- 用 NT loader 来启动 FreeBSD
- FreeBSD中用MRTG监测网路流量