6.3. agetty

agetty は “また別の getty” です。 すべてのパラメータはコマンドラインから取得し、 /etc/gettydefs や、 その他の設定ファイルはいっさい使いません。 agetty に関する文書は、 マニュアルページの agetty(8) にあります。

Figure 6-5 には、 シリアルラインで使うために agetty を起動する方法を示しています。

Figure 6-5. agetty 用の /etc/inittab エントリ

co:2345:respawn:/sbin/agetty -h -t 60 ttyS0 9600 vt102

ttyS0/dev/ttyS0 というシリアルデバイスを指しています。

9600 は、シリアルリンクを流れる 1 秒あたりのビット数です。 agetty では複数種類の値をサポートします。その中から選ぶには、 モデムの CONNECT メッセージや、 あるいは RS-232 のブレーク信号を使います。 シリアルコンソールにはデータレートが 1 種類しかないので、 使う値は一つだけにしてください。

vt102 の部分は、 TERM 環境変数を設定し、 VT100 端末が接続中であることを示します。

-h は CTS/RTS のハンドシェークを行なうようにします。

-t 60 によって、 モデムは 60 秒後にハングアップしますから、 ログインできるのはこの 60 秒間です。 この機能はちゃんとテストして、 リンクがアイドル状態の時に、 init が 60 秒ごとに agetty を再起動していないことを確認した方がいいです。 agetty のプロセス ID が頻繁に変わっていないかどうか調べて下さい。

agetty/etc/issue 内のエスケープシーケンスを使って、 情報を挿入します。例えば、 \n.\o \lremote.example.edu.au ttyS0 というように表示されます。 [1]

ログアウトしても、 agetty が "Date Terminal Ready" 信号を落とし、 モデムをハングアップさせるようには見えません。 ログインセッションの終りに、自動的に接続を切るのが重要なことなら、 agetty の代わりに mgetty の使用を考えてみてはどうでしょうか。

Notes

[1]

訳注:\n はそのマシンのホスト名を、\o はそのマシン のドメイン名、\l は現在の tty ライン名を、それぞれ表します。 agetty(8) 参照。