FreeBSD handbook中文版 15 串口通讯(8)

2008-02-23 08:01:57来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


动块使用的不同,那你必须在内核配置文件中添加下面这行,然后编译内核:
options CONSPEED=19200
15.6.4.2 使用串行口而不是sio0 作为控制台
使用串行口而不是sio0 作为控制台需要做一些重编译。如果你无论如何都要使用另一
个串行口,重新编译启动块,启动引导器和内核。
1. 得到内核源代码。
2. 编辑/etc/make.conf 文件,然后设置BOOT_COMCONSOLE_PORT 作为你要使用(0x3F8,
0x2F8, 0x3E8 or 0x2E8)端口的地址。只有sio0 到sio3(COM1: through COM4:)能被使
用;多接口串行卡将不会工作。不需要任何中断设置。
第27 页FreeBSD 使用手册
3. 创建一个定制的内核配置文件,在你要使用的串行口添加合适的标记。例如,如果
要将sio1(COM2:)作为控制台:
4. device sio1 at isa? port "IO_COM2" tty flags 0x10 irq 3

device sio1 at isa? port "IO_COM2" tty flags 0x30 irq 3
其他端口的控制台标记也不要设。
5. 重新编译和安装启动块:
6. # cd /sys/boot/i386/boot2
7. # make
8. # make install
9. 重编译和安装启动引导器:
10. # cd /sys/boot/i386/loader
11. # make
12. # make install
13. 重建和安装内核。
14. 用disklabel 将启动块写到启动磁盘上,然后从新内核启动。
15.6.4.3 通过串行线键入DDB 调试器
如果你想通过串行控制台进行内核调试,你需要在编译内核时加上下面选项:
options BREAK_TO_DEBUGGER
options DDB
15.6.4.4 在串行控制台上得到一个登陆命令行
第28 页FreeBSD 使用手册
你可能希望通过串行线得到一个登陆命令行,现在你可以看到启动信息,通过串行控制
台键入内核调试信息。可以这样做。
用一个编辑器打开/etc/ttys 文件,然后定位到下面的行:
ttyd0 "/usr/libexec/getty std.9600" unknown off secure
ttyd1 "/usr/libexec/getty std.9600" unknown off secure
ttyd2 "/usr/libexec/getty std.9600" unknown off secure
ttyd3 "/usr/libexec/getty std.9600" unknown off secure
ttyd0 到ttyd3 相当于COM1 到COM4。可以打开或关闭某个端口。如果你已经改变了串
行口的速度,你必须修改标准的9600 与当前的例如19200 相匹配。
你也可以改变终端的类型从不知名的到你串行终端的真实类型。编辑完这个文件,你必
须杀掉-HUP 1 来使这个修改启用。
15.6.5 从启动引导器修改控制台
前面一节描述了如何通过调整启动块来设定串行控制台。这节将讲到在启动引导器中通
过键入一些命令和环境变量来指定控制台。由于启动引导器会被启动进程的第三步所调用,
启动块以后,在启动引导器中的设置将忽略在启动块中的设置。
15.6.5.1 设定串行控制台
你可以很容易地指定启动引导器和内核来使用串行控制台,只需要在/boot/loader.rc
中写入下面这行:
set console=comconsole
你最好把上面一行放在文件的第一行,以至于尽早地在启动时看到串行控制台的启动信
息。同样地,你可以指定内部控制台为:
set console=vidconsole
如果你不设置启动引导环境变量控制台,启动引导器和内核将使用在启动块时用-h 选
项指定的控制台。
第29 页FreeBSD 使用手册
在版本3.2 或以后的版本中,你可以在/boot/loader.conf.local 或/boot/loader.conf
中指定控制台,而不是在/boot/loader.rc 中。在这个方法中,你的/boot/loader.rc 文件
将是这样的:
include /boot/loader.4th
start
然后,创建/boot/loader.conf.local 放上下面的行。
console=comconsole

console=vidconsole
看看loader.conf 的联机手册了解更多信息。
15.6.5.2 使用串行口而不是sio0 作为控制台
你需要使用一个串行口而不是sio0 重新编译启动引导器作为串行控制台。下面的步骤
跟第15.6.4.2 节描述的相似。
15.6.6 警告
这篇文章本意是想告诉人们如何设定没有显示设备或键盘的专用服务器。不幸的是,绝
大多数系统没有键盘可以让你启动,而没有显示设备就不让你启动。使用AMI BIOS 的机器
可以通过在CMOS 中将“graphics adapter”项设为“Not installed”来在启动时不需要显
示适配器。
然而,许多机器不支持这个选项,如果你的系统没有显示硬件就拒绝启动。对于这些机
器,即使你没有显示器,你也必需在你机器上插上显示适配器。建议你试试用AMI BIOS 的
机器。
第30 页

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:FreeBSD handbook中文版 11 打印 (1)基本设置

下一篇:FreeBSD handbook中文版 12 存储