我正在设置控制台服务器,需要确定端口的正确波特率。如果可能的话,我想从命令行执行此操作。有人知道怎么做吗?
答案1
您正在寻找的程序名为“setserial”。
答案2
setserial
是 Linux 特有的,但您也可以使用该stty
命令(在任何 Unix 上可用)来检查任何 tty 的速度和其他特性。
stty
操作其标准输入,因此stty < /dev/ttyXX
将为您提供有关该特定 tty 的信息。或者,如果您处于无法设置 的标准输入的情况stty
,则可以使用-F /dev/ttyXX
选项。
答案3
由于您提到了控制台服务器,并且这个问题带有 linux 标签,因此我假设您正在连接到 linux 服务器。必须将服务器配置为使用串行控制台,因此有几个地方需要检查。
内核设置涉及将“console”参数添加到内核的命令行。例如,添加“console=ttyS0,9600”会告诉内核以 9600 波特率向第一个串行端口(/dev/ttyS0,DOS/Windows 术语中的 COM1)发送消息。您可以通过引导加载程序配置将其添加到命令行。如果使用 grub,这通常是一个名为 /boot/grub/grub.conf 的文件。请注意,您可以为传统键盘/视频控制台 (tty0) 以及串行 (/dev/ttyS0) 设置多个控制台参数。例如:“console=tty0 console=ttyS0,9600”
要通过串行提供登录提示,您需要编辑 /etc/inittab 并添加/编辑如下行。s0:12345:respawn:/sbin/agetty 9600 ttyS0 vt100 此行告诉 agetty 程序以 9600 波特在 /dev/ttyS0 上生成登录提示。
注意,您通常需要在内核和 agetty 设置之间匹配串行端口和波特率。通过检查上述配置,您应该能够确定服务器波特率。