6.4. mgetty

mgetty はモデムをサポートする getty です。ヘイズの AT コマンドセットを備えたモデムをサポートしており、 着信の他に、ファックス送信や発呼に使用されるモデムのサポート用として、 特別に設計されています。 しかし、こういった機能はシリアルコンソールでは不要です。

mgetty には従来の /etc/gettydefs ファイルは不要です。結果として、 mgetty/etc/gettydefs にエントリを書かなくても、 /etc/inittab から起動します。

Figure 6-6. mgetty/etc/inittab エントリ

co:2345:respawn:/sbin/mgetty ttyS0

mgetty の設定には 、 /etc/mgetty+sendfax/mgetty.config というファイルを使います。 このファイルには、 シリアルコンソールが使用するポート用のエントリがあるはずです。

Figure 6-7. mgetty の設定ファイル、 mgetty.config

port ttyS0
 speed 9600
 direct yes
 data-only yes
 toggle-dtr yes
 need-dsr yes
 port-owner root
 port-group root
 port-mode 600
 login-prompt @ \P login:\040
 login-time 60
 term vt102

これらのオプションはすべて /usr/share/doc/mgetty…/mgetty.ps という、 ポストスクリプト ファイル形式の文書になっています。

directdata-onlyneed-dsr および toggle-dtr は yes に設定します。 これで RS-232 の制御ラインはダムモデム用として正しく使われます。

port-ownerport-group それに port-mode は、 root ユーザーだけがシリアルデバイスにアクセスできるようにします。 モデムのアプリケーションには、普通 uucp グループを用います。 ですからこうしておけば、モデムのアプリケーションが、 誤ってシリアルコンソールにアクセスしてしまうようなことは不可能になります。

login-prompt は現在使用中のマシン (@) とシリアルポート(\P) を表しています。 \040 というテキストは、たんに login: の後ろに空白を表示する 8 進数のコードです。

term vt102 には、 接続元で使いそうな端末の種類と型を指定します。 この内容で TERM 環境変数の値が決まります。 別の種類の端末から電話するつもりなら、 この環境変数は変えてもかまいません。

残りの設定ファイル、 /etc/mgetty+sendfax/dialin.config/etc/mgetty+sendfax/login.config は、変更する必要はありません。

ここで提示している設定を変えたい場合、注意して欲しいのは、 mgettyblocking パラメータと toggle-dtr パラメータを一緒に使うのは難しいということです。

問題があれば、 mgetty.configdebug 8 を追加して、デバッグ機能を動かして下さい。 こうすれば mgetty の動作が /var/log/mgetty.log.ttyS0 ファイルで明らかになります。