HAYAGUI

FreeBSD 4.8 + シリアルコンソールでログイン

はじめに

FreeBSD 機にシリアルでログインしてみます。
ディスプレイもキーボードも無いサーバ機を操作する時はtelnet/sshなどで行うのが普通ですが、ネットワークがつながる前の状態(ブート時)を確認するには、シリアルログインとなります。

参考
FreeBSD ハンドブック Chapter 15. シリアル通信

環境

以下のような環境で接続します。
 +-------------+               +-------------+
 | FreeBSD 4.8 |               | Windows2000 |
 |             | RS232C クロス | TeraTermPro |
 |      [COM1] 0---------------0 [COM1]      |
 +-------------+               +-------------+

シリアルコンソール設定

設定はいたって簡単。

カーネルコンフィグファイルのシリアル(sio)を確認します。

mico# cd /usr/src/sys/i386/conf/
mico# cat GENERIC |more
フラグが 0x10 になっていることを確認。その他の場合は、FreeBSD ハンドブックを参照してください。
# Serial (COM) ports
device          sio0    at isa? port IO_COM1 flags 0x10 irq 4
次に、ルート(/) に、/boot.config というファイルを作成して、 -Dh オプションを設定します。このオプションは、「ブートローダー内容は、ディスプレイとシリアルに出力される。その後のブート内容などはシリアル。ログインはディスプレイとシリアルの両方。」
mico# pwd
/
mico# cat boot.config
-Dh
この状態でシステムを再起動させると、ディスプレイ上は以下のようなメッセージのみになるはず。
/boot.config: -Dh

BTX loader 1.00 BTX version is 1.01

login :
この他に、ブートローダーによるシリアルコンソール設定もあります。こっちも簡単。-Dh と同じ動きをします。

シリアルログイン設定

先の設定だけでは、シリアルでログインはできません。 /etc/ttys を設定する必要があります。以下の行の「有効無効」を off から on にします。
# The 'dialup' keyword identifies dialin lines to login, fingerd etc.
ttyd0   "/usr/libexec/getty std.9600"   dialup  on  secure
この後、システムを再起動させるか、init に対して -HUP してください。init の pid は 1 なので。
mico# kill -HUP 1
デフォルトのシリアルポート通信速度は、9600bps、 8bit、パリティなし、ストップビット 1 です。

TeraTermProからコンソールを開く。

すっごく愛用している TeraTermPro から、以下のように COM1 を開きます。

後は、通信条件を合わせて終わり。

Windows のハイパーターミナルでも、OKよ。


戻る



(C)1999 - 2003 Kenji Ito All rights reserved.