訳: 中根 雅文 <max@FreeBSD.org>
シリアル端末を利用することで、 コンピュータのコンソールのそばにいないときや、 手近にネットワーク接続されているコンピュータがないときでも、 FreeBSD の機能を便利に、かつ安価に利用することができます。 ここでは、FreeBSD にシリアル端末を接続する方法を解説します。
もともと Unix システムにはコンソールがありませんでした。 ユーザはコンピュータのシリアルポートに接続された端末からログインしてプログラムを利用していました。 ちょうどモデムと通信ソフトを使ってリモートのコンピュータにログインし、 テキストベースのプログラムを利用するのとよく似ています。
最近の PC は、
高品質の画像を表示できるコンソールを搭載していますが、
ほとんどすべての Unix 系 OS
には未だにシリアルポートを使ってログインするための機能があり、
FreeBSD でもこの機能がサポートされています。
現在使用されていないシリアルポートに端末を接続することでシステムにログインし、
通常はコンソールや X ウィンドウシステムの xterm
のウィンドウ上で起動しているテキストベースのプログラムであれば何でも利用できます。
職場での利用ということで考えるならば、FreeBSD が動作しているコンピュータに接続された何台ものシリアル端末を各社員の机に配置するというようなことが可能です。 また、家庭での利用方法としては、余っている古い IBM PC や Macintosh を FreeBSD が動いているパワフルなコンピュータの端末として利用できます。 普通ならシングルユーザのコンピュータを、 パワフルなマルチユーザのシステムに変えることができるのです。
FreeBSD では、以下に挙げる 3 種類の端末が利用できます。
以下は、それぞれについての解説です。
ダム端末は、 シリアルライン経由でのコンピュータとの接続専用のハードウェアです。 ダム端末は、テキストの送受信および表示ができる程度の計算能力しかもっていないので、 「dumb」 (間抜け) というように呼ばれています。 この端末上でプログラムを実行することはできません。 テキストエディタ、コンパイラ、E-mail、 ゲームなどなどのプログラムを実行するのは、 ダム端末を接続しているコンピュータの方です。
Digital Equipment 社の VT-100 や、Wyse 社の WY-75 を初めとして、多くのメーカが何百種類ものダム端末を作っています。 ほとんどどんな種類のダム端末でも FreeBSD に接続して使用できます。さらに、 高性能の端末の中には画像を取り扱えるものもありますが、 限られた数のソフトウェアパッケージしかこういった機能には対応していません。
ダム端末は、 X ウィンドウシステムで提供されるようなグラフィックアプリケーションを必要としない職場で広く用いられています。
ダム端末 がテキストの表示および送受信の機能をそなえただけのものならば、 言うまでもなく、どんな PC もダム端末になり得ます。 必要なものは適切なケーブルと、その PC の上で動作する端末エミュレーション を行うソフトウェアのみです。
このような環境は、家庭においてよく利用されます。 たとえば、あなたの同居人が FreeBSD のコンソールを専有している時などに、 あまりパワーのないコンピュータを FreeBSD システムにシリアル端末として接続し、 その端末上でテキストだけを用いる作業をおこなうことができます。
ここでは、端末からのログインを可能にするために必要な FreeBSD 側の設定について解説します。 既に端末を接続するポートが利用できるように kernel の設定をおこない、端末が接続されているものと考えて、解説を進め ます。
13章FreeBSD の起動のプロセス で述べたように
init
プロセスは、
システム起動時にすべてのプロセス管理や初期化をおこなっています。
init
が行っている仕事の一つは、
/etc/ttys
ファイルを読んで、利用可能な端末上で
getty
プロセスを起動することです。
getty
プロセスは、
ログイン名を読み込み login
プログラムを起動します。
したがって、FreeBSD の端末を設定するには、
root
で次の手順を踏まなければなりません。
端末を接続するポートの /dev
のエントリが含ま れている行がまだ存在しなければ、これを
/etc/ttys
に追加してく ださい。
/usr/libexec/getty
が対象となるポートに対して
実行されるように指定してください。また、
/etc/gettytab
ファイ ル内の適切な
getty
タイプのエントリを指定してください。
デフォルトのターミナルタイプを指定してください。
対象となるポートを 「on」 に設定してください。
そのポートが 「secure」 であるかどうかを指定してください。
init
に
/etc/ttys
を読み込みなおさせてく
ださい。
また、必要に応じて /etc/gettytab
を変更し、上の 2で使用する
getty
のエントリを追加してください。
この章ではこの方法については特に解説しませんので、gettytab(5)
および getty(8) のマニュアルをご覧ください。
/etc/ttys
には、
FreeBSDシステム上のログインを許可するすべての
ポートを記述します。たとえば、一つ目の仮想コンソール
ttyv0
のエン
トリもこのファイルにあります。このエントリのおかげで、
コンソールからの ログインが可能になっています。
このファイルには、他の仮想コンソール、シ
リアルポートおよび仮想端末のエントリも含まれています。
端末を接続する場合は、そのポートの
/dev
のエントリを、
/dev
の部分を省略して記述します
(たとえば /dev/ttyv0
については、
ttyv0
として記述します)。
FreeBSD のデフォルトのインストール状態では、
ttyd0
から ttyd3
までの、初めの 4 つのシリアルポートに対応した
/etc/ttys
ファイルが置かれています。
これらのポートのいずれかに端末を接続する場合は、
新たにエントリを追加する必要はありません。
/etc/ttys
に追加するシステムに 2 台の端末、Wyse-50 と、VT-100
端末をエミュレートしている
Procomm
端末ソフトウェアを動かしている古い 286 IBM PC
をシステムに接続しようとしていると考えてください。
Wyse は 2 番目のシリアルポートに、286 は
6 番目のシリアルポート
(マルチポートシリアルカード上のポート) に接続します。
/etc/ttys
内の対応する項目は次のようになります。
ttyd1ttyd5 "/usr/libexec/getty std.19200" vt100 on insecure
最初のフィールドには、通常 | |
2 番目のフィールドは、
この回線に対して実行するコマンドで、通常は getty(8)
です。
たとえば、Wyse-50 はパリティなしで、38400 bps で接続します。286 PC はパリティなしで、19200 bps で接続します。 | |
第 3 フィールドは、その tty
回線に通常つながる端末の種別です。
ダイアルアップポートでは、実際、
ユーザがどんな種類の端末やソフトウェアで接続してくることもありうるので、
このフィールドには 我々の例では、Wyse-50 には実際の端末種別を使っていますが、 Procomm を動かしている 286 PC は、VT-100 をエミュレートするように設定します。 | |
4 番目のフィールドは、
ポートを有効にすべきかどうかを指定します。
ここに | |
最後のフィールドは、
そのポートが安全かどうか指定します。
あるポートが安全だということは、そのポートから
鍵のかかる部屋にある端末であっても、「insecure」
にしておくことが強く推奨されます。
スーパユーザ特権が必要なら、ログインしてから
|
細心の注意を払って設定をおこなっても、 ときには端末の接続がう まくいかない場合があるでしょう。以下に、 よく見られる問題とその解決方法 を示します。
本文書、および他の文書は ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ からダウンロードできます。
FreeBSD に関する質問がある場合には、
ドキュメント を読んだ上で
<questions@FreeBSD.org> まで (英語で) 連絡してください。
本文書に関する質問については、
<doc@FreeBSD.org> まで電子メールを (英語で) 送ってください。