原作: &a.kelly;
訳: &a.max;
シリアル端末を利用することで, コンピュータのコンソールのそばにいないと
きや, 手近にネットワーク接続されているコンピュータがないときでも,
FreeBSD の機能を便利に, かつ安価に利用することができます. ここでは,
FreeBSD にシリアル端末を接続する方法を解説します.
もともと Unix システムにはコンソールがありませんでした. ユー
ザはコンピュータのシリアル ポートに接続された端末からログインして
プログラムを利用していました. ちょうどモデムと通信ソフトを使ってリモート
のコンピュータにログインし, テキスト ベースのプログラムを利用するのと
よく似ています.
最近の PC は, 高品質の画像を表示できるコンソールを搭載していま
すが, ほとんどすべての Unix 系 OS には未だにシリアル ポートを使ってログ
インするための機能があり, FreeBSD でもこの機能がサポートされています.
現在使用されていないシリアル ポートに端末を接続することでシステムに
ログインし, 通常はコンソールや Xウィンドウ システムの
ダム端末は, シリアルライン経由でのコンピュータとの接続専
用のハードウェアです. ダム端末は, テキストの送受信および表示ができる
程度の計算能力しかもっていないので, ``dumb'' (間抜け) というように呼ば
れています. この端末上でプログラムを実行することはできません. テキスト
エディタ, コンパイラ, E-mail, ゲームなどなどのプログラムを実行するのは,
ダム端末を接続しているコンピュータの方です.
Digital Equipment社の VT-100 や, Wyse社の WY-75 を初めとして,
多くのメーカが何百種類もの ダム端末を作っています. ほとんどどんな種
類のダム端末でも FreeBSD に接続して使用できます. さらに, 高性能の端
末の中には画像を取り扱えるものもありますが, 限られた数のソフトウェア
パッケージしかこういった機能には対応していません.
ダム端末は, X ウィンドウ システムで提供されるようなグラ
フィックアプリケーションを必要としない職場で広く用いられています.
がテキストの表示およ
び送受信の機能をそなえただけのものならば, 言うまでもなく, どんなPC
もダム端末になり得ます. 必要なものは適切なケーブルと, そのPCの上
で動作する X 端末は, 既存のものの中で最も洗練された種類の端末といえ
ます. X 端末は, たいていの場合シリアル ポートで゜はなく, イーサネッ
トのようなネットワークを利用した接続をおこないます. また, アプリケーション
の利用においても, テキストベースのものだけでなく, X アプリケーション
の利用が可能です.
ここでは, 参考までに 端末について紹介しただけで, X 端
末の設定や利用についての解説は シリアル端末を FreeBSD システムに接続するためには, 適切なケー
ブルと, 端末を接続するためのシリアルポートが必要です. ここでは, これ
らについて説明します. もし既にあなたの利用したい端末と, その端末
を接続するためのケーブルについてよく理解していれば, の章まで読み飛ばしてください.
端末の接続は, シリアルポートを利用します. そこで, 端末を
FreeBSD システムに接続するためには, シリアルケーブル (RS-232C ケーブ
ルとも呼ばれています) が必要となります.
シリアルケーブルには2種類のケーブルがあります. どちらの種類の
ケーブルを使わなければいけないかは, どんな端末を接続したいかによります.
ヌルモデムケーブル (またはリバースケーブルあるいはクロ
スケーブル) は, たとえば ``signal ground'' 信号のように, いくつかの信
号はそのまま通しますが, 他の信号は途中で入れ替えて通します. たとえば,
``send data'' 信号のピンは, 反対側のコネクタの ``receive data'' 信号の
ピンと繋がっています.
自分で使うケーブルは自分で作りたいということであれば, 以下にター
ミナルを接続する際に推奨されるヌルモデムケーブルの結線を示しておきま
す. この表では, RS-232C の信号線の名前と, DB-25 コネクタ上のピンの番
号を示しています.
スタンダードシリアルケーブル (またはストレートケーブル)
の場合は, すべての RS-232C 信号をそのまま通します. つまり, 片方の ``send
data'' 信号のピンは, 逆側の ``send data'' 信号のピンと繋がっています.
モデムを FreeBSD に接続するときや, 一部の端末を接続するときにこのタイプの
ケーブルを使用します.
シリアルポートは, FreeBSDが動作しているホスト コンピュータと端
末の間でデータのやりとりを行うために用いるデバイスです. ここでは,
現在存在するポートの種類と FreeBSD でのポートのアクセス方法について解
説します.
シリアルポートには何種類かのものがあります. ケーブルを購
入したり自作したりする前に, そのケーブルのコネクタの形状が端末および FreeBSD
システムのポートの形状と一致していることを確認してください.
ほとんどの端末は DB25 ポートを搭載しています. FreeBSDが動作しているも
のを含めて, PCは DB25 または DB9 ポートを搭載しています. マルチポート
のシリアルカードの場合は, RJ-12 や RJ-45 のポートを搭載しているかもし
れません.
利用されているポートの種類に関しては, ハードウェアについてきたドキュメ
ントを参照してください. また, 多くの場合, ポートの形状から判断すること
もできるでしょう.
FreeBSDでは, /dev ディレクトリ内のエントリを介
してシリアルポートへのアクセスがおこなわれます. 2種類の異なったエン
トリがあります.
ここでは, 端末からのログインを可能にするために必要な FreeBSD
側の設定について解説します. 既に端末を接続するポートが利用できるように
kernel の設定をおこない, 端末が接続されているものと考えて, 解説を進め
ます.
簡単に言えば, プロセス管理や初期化をおこなっている /etc/ttys の内容を編集する必要があります.
まず, /etc/ttys に以下の
変更を加えてください.
既にエントリがある場合を除いて, まず初めに
/etc/ttys にエントリを追加しなければいけません.
/etc/ttys には, FreeBSDシステム上のログインを許可するすべての
ポートを記述します. たとえば, 一つ目の仮想コンソール /dev のエントリを, /dev の部分
を省略して記述します.
FreeBSD のインストール当初の状態では, /etc/ttys に記述され
ています. これらのポートのいずれかに端末を接続する場合は, 新たなエント
リを追加する必要はありません.
ここで紹介している例では, 既にファイルにエントリが存在する 2番目のシリ
アルポート, /etc/ttys か
ら抜粋して示します.
次に, 端末からのログインを処理するプログラムの指定をおこな
います. FreeBSDでは, 標準的には /usr/libexec/getty をこの目的
で利用しています. /etc/gettytab から
読み込みます.
ファイル /etc/gettytab には, 新旧の端末に関する多数のエントリ
が記述されています. ほとんどの場合, /etc/ttys の /etc/ttys の設定です.
/etc/ttys の 3番目のフィールドには, そのポートのター
ミナルタイプのデフォルトを指定します. ダイアルアップ用のポートの場合
は, ユーザがどのタイプの端末あるいは通信ソフトを利用してダイアルアップ
してくるかは分からないので, /etc/ttys の中でターミナルタイプが指定されていれば,
このプロンプトを表示せずに先に進むことが可能です.
FreeBSD 上で, どのターミナルタイプを利用できるかは,
/usr/share/misc/termcap をご覧ください. このファイルには, お
よそ 600 のターミナルタイプが定義されています. 必要ならば, 新たなエン
トリを追加することも可能です. 詳しくは termcap(5) のマニュアルをご覧く
ださい.
紹介している例では, Wyse-50 のターミナルタイプは Wyse-50 です (もっ
とも他のタイプをエミュレートすることも可能ですが, ここでは Wyse-50 モー
ドで使用します. ). また, 286マシン上では Procomm が VT-100 エミュレー
ションをおこなうように設定されています. 以下が, まだ未完成の
/etc/ttys の関連部分です.
/etc/ttys のつぎのフィールド, つまり 4番目のフィー
ルドは, そのポートをアクティブにするかどうかの設定です. このフィールド
に ``on'' を指定すると, /etc/ttys です. それぞれのポートを とうとう最後のフィールドの設定です. (実際にはここでは触れ
ませんが, オプショナルな/etc/ttys のエントリに端末の場所を表
すコメントを追加したものを示します.
FreeBSD をブートすると, 最初に起動されるプロセス, /etc/ttys を読み込んで, 記述されているプログラムを利用可能な
ポートに対して実行し, ログインプロンプトを送り出させます.
/etc/ttys の編集が終わった後, /etc/ttys を読み込みなおすようになっています.
/etc/ttys の変更を保存したら, 以下のようなコマンドを実行して,
細心の注意を払って設定をおこなっても, ときには端末の接続がう
まくいかない場合があるでしょう. 以下に, よく見られる問題とその解決方法
を示します.