シリアルポートのボーレートを決定する方法は?


18

コンソールサーバーをセットアップしていますが、ポートの正しいボーレートを決定する必要があります。可能であれば、コマンドラインからこれを実行したいと思います。誰もが方法を知っていますか?

回答:



25

setserialLinux固有ですがstty、tty(すべてのUnixで利用可能)を使用して、ttyの速度やその他の特性を確認することもできます。

stty標準入力で動作するため、stty < /dev/ttyXXその特定のttyに関する情報を提供します。または、の標準入力を設定できない状況にある場合はstty-F /dev/ttyXXオプションを使用できます。


5
あなたは使用する必要があるかもしれません stty -F /dev/ttyXX
マークLakata

2

コンソールサーバーについて言及し、この質問にはlinuxというタグが付いているので、Linuxサーバーに接続していると仮定します。確認する場所がいくつかあるように、サーバーはシリアルコンソールを使用するように構成する必要があります。

カーネルのセットアップでは、カーネルのコマンドラインに「コンソール」パラメーターを追加します。たとえば、「console = ttyS0,9600」を追加すると、カーネルは9600ボーで最初のシリアルポート(DOS / Windows用語では/ dev / ttyS0、COM1)にメッセージを送信します。これは、ブートローダーの構成を介してコマンドラインに追加できます。grubを使用する場合、これは通常/boot/grub/grub.confというファイルになります。従来のキーボード/ビデオコンソール(tty0)とシリアル(/ dev / ttyS0)に対して複数のコンソールパラメーターを使用できることに注意してください。exaxmpleの場合: "console = tty0 console = ttyS0,9600"

シリアル経由でログインプロンプトを提供するには、/ etc / inittabを編集し、次のような行を追加/編集する必要があります。s0:12345:respawn:/ sbin / agetty 9600 ttyS0 vt100この行は、9600ボーで/ dev / ttyS0にログインプロンプトを生成するようagettyプログラムに指示します。

通常、カーネルとagettyのセットアップ間でシリアルポートとボーレートを一致させる必要があることに注意してください。上記の構成を確認することにより、サーバーのボーレートを決定できるはずです。


Linuxがinittabを使用しない限り。私のFedoraおよびUbuntuシステムは、Upstart(en.wikipedia.org/wiki/Upstart)の一部である/etc/event.d/tty*および/etc/event.d/serialを使用します。
追って通知があるまで一時停止します。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.