長野工業高等専門学校紀要 ・第
3 0
号( 1 9 9 6 ) 2 0 3
マルチ OS‑PC システムの構築
大矢健一 楡井雅巳 西村治 村田雅彦 山下威 岡島英男 中澤達夫 堀内征治
(平成
8
年1 0
月31
日 受理)Construction of Multi OS Personal Computer System
By Ken'ich OHYA Masami NIREI Osamu NISHIMURA Masahiko MURATA Takeshi YAMASHITA Hideo OKAJIMA Tatsuo NAKAZAWA Seiji HORIUCHI
l. はじめに
電子情報工学科ではこれまでの約
6
年間に渡 り、学科設立時に導入 されたMS ‑ DOS
をOS
とするパーソナルコンピュータ( I BM/ PS ‑ 5 5 )
システムを用いで情報処理教育を行 って きた。我 々は、 とくに高学年の学生についてはUNI X
の環境を中心 として教育を行 う方針 を打ち出してお り、これを実現するためにパソコンをキャラクタ端末 として用い、サーバ と なるUNI X
ワークステーシ ョンにシリアル回線のターミナルサーバを介 して結んで使用 し ていた. しか し, このシステムでは,例えばUNI X
の大 きな特徴の一つであるXWi nd o w S ys t e m
も利用で きず, また,WWW
を中心 とするインターネットの利用にも大 きな制限 があるなど,今 となっては非常に旧式なものとなってしまっていた.このため,機器のリ プレースを要望 してきたところ,昨年度後半になって予算が認められ,新 しいシステムの導 入が可能 となった。現在の一般的な
PC
の代表的な仕様はWi n d o ws 9 5
を基本ソフ トとして使用するもので あろう.この最新のOS
を利用すれば,ネットワークへの接続が従来に比べて簡単であるな どの利点がある. しか し,既に述べたように我々の学科の主要な教育環境 としてUNI X
を 利用す る方針であることか ら,PC
用UNI X
をOS
とするシステム構築を行 うことを前提 にして仕様 を考えた. しか し、UNI X
は低学年の学生 には必ず しも取 っ付 き易い ものでは ないことや, これまでに購入 した (ライセンスを持 っている)DOS
用のアプリケーション ソフト資源を今後 も有効に利用することも考えて,1台のPC
に複数のOS
を載せたマルチOS ‑ PC
システムを構築することを計画 した.このシステムの概要については、既に他で報告 1)しているが、本報告では今後同様のシス テム構築を行 う際に参考になるよう考慮 して、システム構築の実際についてできるだけ詳細 に記述 した。
2.
システムの構築2‑1
導入 したシステムの仕様本システムでは、以下のような環境が要求される。
●花子情報工学科助手,●●亀子価扱工学科孜 官, '''電子情報工学科助教授,= ●屯子頒紋工学科教授
( 1 )UNI X
が利用できること。( 2)
従来利用 していたDOS
ベースのアプリケーシ ョンが利用できること0( 3)1
年生が利用 している情報教育センタと互換性のあるWi ndo ws
が利用できること。1
、2
についてはカリキュラムの関係か ら必須であ り、3
については2
の代替案であ り、ま た1
年生時に利用する環境 との継続性か らの要求であった。最終的に決定 した仕様 (機器)を表に示す.
導入された機器
PC( 4 4
台)CPU: Pe n t i um 1 0 0 MHz
メモリ:1 6 MI i
HDD: 8 5 0 MB
キーボードASCI
I配列
マウス
3
ボタン デ ィスプ レイ1 7
インチカラー ハブ ( 2
台)1 0Ba s e T,2 4
ポー ト ソフ トウエアFr e e BSD
Wi ndo ws 9 5 Vi s ua lBASI C
PC
本体は,最近のPC
の例に漏れずWi i l do ws 9 5
がプリインス トールされた機種である.しか し,既に述べたように中心 として使用する
OS
であるUNI X
にFr e eSo f t wa r e
であるFr e e BSD
を採用するため,OS
のインス トールを初めか らや り直す必要が生 じた.ここで は,boo tma na g e r
を利用 して3
種類のOS( UNI X,MS‑ DOS,Wi nd o ws 9 5)
を同時に載 せ,起動時に必要 とするOS
を選択 してブー トするシステムを実現 した.今回のシステムの その他の特徴 として,デ ィスプ レイを1 7
インチのものにしたことが挙げ られる. これは, コス ト的にはかなり嵩むことになったが,UNI X
のXWi ndo wS ys t e m
をある程度快適に 利用するために必要であると判断した.以下、導入 されたハードウエアを実際に教育に使用するために行 ったシステム構築につい て詳細 に述べる。
2‑2 3
種類のシステムの共存DOS + UNI X、UNI X + Wi ndo ws3. 1
あるいはWi ndo ws 3 . 1 + Wi ndo ws 9 5
など、2
種類のOS
を共存させたシステムはこれまでにも例が挙げ られているが、DOS
とUNI X
および
Wi pdo ws 9 5
の3
種類のOS
の共存については適切な資料が見当たらず、ネットニュー スなどを参考にしながら、手探 りでの環境構築 となった。今回導入した
OS
は、これまで利用 している (ライセンスを持っている)I BMDOS
J5.0/V、新税導入の
PC
にプ レイ‑/スト‑
)i,されているWi ndo ws 9 5
、および、PCI UNI X( Fr e e BSD 2
・1 ・ O R)
である。今回Fr e e BSD
の導入を選択したのは、無償で入手できる( Fr e e So f t wa r e )
ソフトである点 と、システム管理が比較的や りやすいという点とを考慮 したためである。
マ ル チ OS・PCシステ ムの構築 205
2‑3
ハードウエアとの関連まず
pC‑ UNI X
を導入する時に問題になるのは、ハードウエアの仕様である。どのハード ウエアが実際に使用可能かという自由度は、導入するUNI X
システムによって異 なり、そ れぞれのバージ ョンなどによって確認が必要である。一般に
PC‑ UNI X
の導入時に生 じる問題点は、ネ ットワークボード、グラフ ィックボー ドとマウスに開通 していることがほとんどである。我 々が導入することになったPC
は、Wi ndo ws 9 5
をプ レインス トールして販売されるごく一般的なタイプのものであ り、ネ ッ ト ワークボードはオプシ ョンであった。ネットワークボードについては後述するが、初めに業 者より提案 されたボードは、結局今回の環境では正常に動作せず、利用できなかった。次 に
DOS
とWi ndo ws 9 5
の共存 についても、ハードウエアの制約がある。DOS
とWi ndo ws 9 5
は、共にブー トドライブがC
である必要があ り、インス トール時に注意が必 要である。さらにマニュアル類の入手の問題がある。従来IBM クローン機は、ハードウエアの情報 を全て公開してお り、購入時には個 々の部品の仕様書、取 り扱い説明書が添付されるのが一 般的である。 しか し最近の国産
PC
(いわゆるDOS/ V
機)は、購入時にはハードウエア に関するマニュアルが添付されておらず、メーカに直接問い合わせてもその情報を手に入れ ることが困難である。我 々の場合にもマニュアル類の入手にかなりの時間を有 し、その間に 手探 りで不必要な作業を強いられ、多大な時間を浪費する結果となった。2‑4 3
つのOS
のインス トールOS
のインス トールは、基本的には個 々のインス トール制 頃に従 って行 うことになるが、先に述べたように、複数の
OS
が共存することによって生 じる問題がある。ここでは、問題 点を挙げなが らインス トール方法を紹介する。2‑4‑1
デ ィスク領域の分割pC‑ UNI X
など複数のOS
の導入時には、ハードデ ィ スクをOS
毎に領域を分割する。既にDOS
やWi ndo ws 9 5
などを利用 している場合 に は、" de r a g "
、''軸
S"
といったユーテ ィリテ ィによって分割 を行 うが、今回は初期状態か らのインス トールであったので、ブー トマネージャによって領域の分割を行 った。DOS
、Wi ndo ws 9 5、Fr e e BSSD
それぞれの領域のサイズは,5 0 M、2 0 0 M、5 6 0 M
バイトとした。DOS
領域が極端に小 さいのは、今後新 しいアプリケーシ ョンの導入が見込まれず、現状の 環境のみで良いと判断 したためである。ハードデ ィスクをフォーマ ッ トした後、ブー トマ ネージャをインス トールする。ブートマネージャは、DOS
とWi ndo ws 9 5
を共存 させるた め、仮想的に2
つのCドライブを扱 えるものである。D
ドライブはFr e e BSD
の領域 とし た。ノ1‑ドデ ィスクのフォーマ ットは、BI OS
がフォーマ ットなどのハードデ ィスクユー テ ィリテ ィを提供 していない簡易版であったため、ブー トマネージャで全領域を削除する ことで領域のクリアをし、実際にはフォーマ ットは行 っていない。214‑2 DOS
のインストール ブ一十マネージャによって、DOS
用のC
ドライブを アクテ ィブにした後、通常にDOS
をインス トールする。DOS
用アプリケーシ ョン群は、所有 していた他の
PC
のハ∵ドデ ィスク上に環境を整備 し、それをs l a v e
のデ ィスクとし て認識させ、内容 をコピーした。DOS
用アプリケーシ ョンは、従来か ら利用 してきたソフトウエア (エデ ィタ
、C
コンパイラ、BAS I C
など)である。2‑4‑3 W i ndows 95
のインストール ブー トマネージャによって、Wi ndwo s 9 5
用 のC
ドライブをアクテ ィブにし、通常にCD‑ ROM
よりインス トールした。インス トール 後、プラグ ・アンド ・プ レイ( PAP)
の機能は停止 させた。これは、我 々の過去の経験からpc‑ UNI X
とWi ndo ws
などのPAP
機能 との相性が良 くないと判断 しているためである。事実
PAP
機能が働いている場合には、実際には使岡されていない3 0 0 h
のⅠ /
0 アドレス がフックされて しまった り、ネットワークボードのⅠ /
0 アドレスが2 60 h
などに割 り付け られてしまい、Fr e e BSD
の導入の妨げ となったoWi ndo ws 95
のアプリケーシ ョンとして は、新たに購入 したVi S ua lBASI C
をインス トール した。2‑414 FteeBSD
のインストールFr e e BSD
のインス トールは、PC
附属のCDI ROM
から行なった。PC
附属のCD‑ ROM
は、E‑ I
D のCD‑ ROM
であ り、ATAPI
対応 のブートイメージを使 うことによってインストールができた。CD‑ ROM
か らのインス トー ルとした理由には、ネットワークボードの問題 もあった。業者より提案されたネットワーク ボードはFu j i t s u
のチ ップを使 った ものであ り、Fr e e BSD2. 1 . OR
のブー トイメージでは サポートされておらず、認識できないという問題があ り、ネットワークインストールが不可 能であった。幸いにも、我 々の一人がFr e e BSD
が収納されているCD
を所有 していたた め、それを利用することができた。ブー トイメージのロード後、pa r t i t i o
mの設定などを行 なう。今回のインス トールでハードデ ィスクに関連 した問題 も生 じている.F r e e BSD
側の ハードデ ィスクのg e o me t r y
の認識が誤っているというものであった。このまま作業を進 めてしまうと、これまでにインストールしたDOS
やWi nd o ws 9 5
の領域までもが破壊 され てしまう.通常はFr e e BSD
が自動的に認識するg e o me t r y
で問題はないのであるが、今回 はセクタ数が実際の半分で認識され、シリンダ数が2
倍の数で認識されていた。これを確認 するためには フォーマ ッ トユーテ ィリテ ィが必要であったが、BI OS
がこの機能を提供 し ていないため、ハードデ ィスクを外 し、所有 していた他のPC
でフォーマ ットを行ない確 認を行なった。 もしこの時点でマニュアル類が提供されていれば、すぐに確認が可能であっ たであろう。また、ハードデ ィスクの仕様に関連するかは不明であるが、デバイスの生成時 に、必ず1
度はデバイスの生成に失敗する現象が現れている。ge ome t r y
を正 しく修正 し、デバイス生成が行われた後は、ソフ トウエアのインス ト‑)I, を行 う。インス トール内容は、システム、カーネルのソース、XWi ndo wSys t e m
である。カーネルのソースは、ネ ットワークボードやマウスを認識させるため、カーネルの再構築を 行なうために必要である
。XWi ndo wSys t e m
のアプリケーシ ョン群は、NFS
マウントし て利用することを構想 していたため、個 々にインス トールされる必要がなく、ここでは導入していない。
インス ト
ー
ルの完了後、カーネルの再構築を行 う。再構築の対象は、ネ ットワークボード およびマウスである。ネットワークボードはFu j i t s u
のチ ップを使 ったI SA
バスのもので あ り、マウスはLo gi t e c
のPS/ 2
マウスである。それぞれソースに含 まれるLI NT
内のf e O
とps m
oのエントリを使 うことで認識できた。 しかしネットワークボードについては、認識はするもののハード的にバスの速度に追従できず、タイムアウトが生 じた。このネット ワークボードの現象は全体の約
9
割に確認 されたため、ボードを3Co m 3C5 0 9 B
のものに 全数交換を行なうことにより改善した。3Co m
のネ ットワークボードは、Fr e e BSD
標準のe dO
のデバイスで認識できている。マ ル チ
OS・ PC
システ ムの構築2 0 7 XWi nd o wS y s t e l
Tlは、S3t o r i o 6 4
のグラフィックアクセラレータに、g e nd a c
のチ ップ セッ トを選択することで、1 2 8 0 X1 0 2 4
の解像度が得 られた。本システムでは、1 2 8 0 xl O 2 4
では小 さ過 ぎると判断し、1 0 2 4 X7 6 8
とした。一般的にワークステーシ ョンなどで使われて いる1 0 5 4 Ⅹ9 0 0
の解像度はデ ィスプ レイ側でサポー トされてお らず、実現で きなかった。解像度についても、デ ィスプレイのマニュアルが入手 されたことで確認できたことである。
2 ‑5
本システムの利用方法以上述べたように、本システムは
3
つのO
Sを導入 したマルチOS ‑ PC
システムである。本システムでは、電源投入後ブートマネージャによる
OS
の選択画面が現れ、利用者が必要 なシステムを起動できるようになっている。利用者は、希望するOS
を自由に選択できる が、DOS
以外はソフト的にシステムを終了させる作業が必要であ り、適切な手順で終了 さ せずに電源を切 ってしまうとシステムの破壊の危険がある。3. UN
IX システムの構築pC
にFr e e BSD
をインス トールした後には、実際にそれを学生が使えるようにセ ットアッ プする必要がある。 この節ではその方法について具体的に述べる。セ ットア ップ作業は想像 していた以上にハードなものであった。朝から深夜
2‑3
時まで の作業が約3
週間にわたって続いた。今後の同様な作業の軽減に本稿が役立てば幸いである。3‑1
どのようなシステムにすべきか入札 により機種が決定 した後、実際に
PC
が長野高専に持ち込まれるのは3
月末 になる。4月の新学期 までの準備期間は実質一週間しか見込めないため、実際に
PC
が長野高専に納 入される前に決められることはなるべ く決めてお く必要があった。3
月は担当教官たちの出張などが多い時期であり、システム構築の相談のために実際に集 まって会議を持つことは難 しいと考えられるため、ネットワークを利用 して打合せができる ように、新pC
システムについての議論のためのne vI P
CQ e i. na ga nO ‑ ne t. a c. j p
という メーリング リス トを新たに作成 した。このメーリングリス トの構成員は電子情報工学科のメ ンバーにより構成 されるa l 1 ‑ e i Qe i. na ga no ‑ Ac t. a c. j p
と全 く同 じであったが、名称 を 変えてお くことにより、新pC
システム専用の議論の場であることが明確に意識できるという利点がある。このメーリングリス トを作成 したのが 3月 11日 (月)のことであった。
メーリングリス トにおいて、まず最初に言毒 旨すべ き以下のようなテーマが提示 された
O
・二階実習室をどのように使 うか (従来の Ⅹ端末の位置付け、既存
p
c をどうするか)●新
pC
をどのようなシステムにするか‑Wi nd o ws 9 5
に何MB
のパーテ ィシ ョンを割 り当てるか‑pC‑ UNI X
に何 を用いるか‑NFS
サーバ機はどうするか、何台あればよいか、 ミラーリングはどうするか‑ バ ックア ップはどうするか
‑NI S
をどうするか‑ どのようなツールが必要か
‑ どのような三割原でインス トールしていけばよいか
‑x のウ インドウマネージャは何 を用いるか
・教育内容 と方法 (ソフ ト系実習の見直 し)
これを見てわかるように、システム構築の面から見て未定事項が多いのは
PC‑ UNI X
に関 することである。PC‑ UNI X
はカスタマイズが非常に柔軟に行なえるため、学生用の環境を 構築 しようとする場合、特に一つの基準 と言えるようなものを構築 しようとする場合 には、多 くの選択肢の中から絞 りこんでい くという作業が発生する。
3‑2 PC̲ UNI
X の選択コンピュータ教育を
UNI X
で行なう利点は計 りしれない。代表的なものを列挙すると以 下のようになる。●各種言語による開発環境がフリーで構築可能
●さまざまな有用なツールがフリーで入手可能
●OS
がユーザ領域 とシステム領域とに分け られているため、ユーザがうっか り誤操作等 をしてもOS
が落ちる心配がほとんどない・OS
その もののソースを見ることさえ可能 (フリーのPC‑ UNI X
の場合)であるため、OS
そのものに対する疑問点を解決することが可能●強力なウ インドウシステムである
XWi ndo wSys t e m
が動作以上のような利点のある
UNI X
であるが、従来は比較的高価なワークステーシ ョンでの み動作するOS
であったが、近年のPC
の性能向上によりPC
上でも何 ら問題なく動作す るようになった。フリーの
PCI UNI X
として代表的なものは、L inux
とFr e e BSD
であるO どちらを載せた らいいのか悩みは尽 きなかったが、以下のような理由により今回はFr e e BSD
を選択 したo
●従来、電子情報工学科では学生用の
UNI X
マシンにSunOS
が使用 されていたが、Fr e e BSD
はこのSunOS
により近かった●Li nux
はち ょうどバージョンア ップになった時期であり、日本語パ ッケージであるJE
がまだリリースされていなかった3‑3 UNI
X を使う上でのPC
のハード的な仕様3
年生以上の学生がPC
を使 うときにはUNI X
をメインに使 うことを念§酎こおき、p
cの ハード的な仕様 を以下に示すようにそれを意識 したものにした。・1 7
インチデ ィスプ レイ (トリニ トロン管)●xwi ndo wSys t e m
が1 0 2 4 Ⅹ7 6 8
のサイズで動作すること●マウスは
3
ボタンのもの●Et he r ne t
3‑4 PC‑ UNI
X ネッ トワーク設計 ‑PC4 4
台によるシステムを設計する上で何が最重要かを熟考 し、 とくに以下の点に留意 し てシステム構築を行 ってい くことにした。・どのマシンに
l o gi n
しても、メールの読み書 きなども含め、全 く同等に使えること●シャットダウン方法が容易であること
マ ル チO
S・ PC
システ ムの構築2 0 9
●学生が従来使用 していた
UNI X
システムと違和感がないように使用可能なこと●管理者側からは、ツールのア ップデートなどが容易なこと これを満たすために以下のような設計方針にした。
●NI S
によるネ ットワーク管理●NFS
によるネットワーク管理●容易なシャッ トダウン方法の実現
●各種ツールの徹底的な初期設定
3‑5 NI S
によるネッ トワーク管理数十台の
UNI X
システムにおいては、さまざまな情報をネットワーク的に共有化するため のツールとして、NI S( Ne t wo r kl nf o m a t i o nS y s t e m)
というものが通常利用 される。NI S
を用いることにより、各ホス トの情報やユーザ情報のパスワード管理などをネットワーク的 に一元的に行 なえるようになる。NI S
によるシステムは、一台以上のNI S
サーバ機 とそれ以外のクライアントか ら構成 され る。 よって、NI S
を用いるためには、まずNI S
サーバ機 を構築する必要がある。電子情報 工学科内ではそれまでNI S
を使用 していなかったため、全 く新たにNI S
サーバ機を構築する必要があった。
当初は
4 4
台のうちの1 ‑2
台をNI S
やNFS
のサーバ掛 こしょうとしていたが、4 4
台全 部がDo s
やWi ndo ws 9 5
などに用いられるときに不都合が生 じることに気づいた。すなわ ち、全台数がDo s
やWi nd o ws 9 5
などに用いられているとき自体にはNI S
やNFS
のサー バ機は必要ないのであるが、Do s
やWi nd o ws 9 5
を終えた後にどれかのマシンをUNI X
として立ち上げる瞬間にサーバ機が存在 しなくなってしまう。
よって、
NI S
サーバを既存ワークステーシ ョン上に構築する必要があった。従来学生用 ワークステーシ ョンとして稼働 していたマシン( S unI PX,6 4 MB)
をNI S
サーバ機にあて ることとした。NI S
はブロードキャス トを利用するために、NI S
サーバとクライアントとが同 じサブネッ トに属する必要がある。当時、ATM LAN
が稼働 しようとしてお り、新p
c システムはATM LAN
の方に接続 したかったが、従来学生用ワークステーションは既存LAN
上にあっ たため、新pC
システムも既存LAN
の方に接続することにした。従来学生用ワークステーシ ョンは
3
台ありそのうち2
台がS un
のワークステーシ ョンで あった。一台をNI S
のサーバ、もう一台をNI S
のスレーブサーバとした。ス レーブサーバとは、何 らかの理由でサーバが機能 していないときにサーバの機能をするものである。
NI S
のサーバ とスレーブサーバの設定作業は、月刊誌「 UNI XMa g a z i ne 」 2 )
の設定例を 参考にして行 なったが、これは古い記述であったためにこのままでは動作 しなかった。そ こでSun
のシステム管理のマニュアル3)
を参考にして、ようや くNI S
のサーバ とスレーブ サーバが動作することとなった。さて
、NI S
の設定をする際に気づいたことであるが、/ e tC / Pas s vd
の共有化のために、学 生がどのマシンにl o g i n
しそもホームデ ィレクトリのパス名が同じである必要があった。こ のため、学生 と教職員のホームデ ィレクトリを、学生
/ ho me/S tude nts
教職員/ ho me/ Teac he rs
として統一 した。すなわち
、/ ho me
に全て統一するということにより各マシンにおける/ ho me
はマウントポイントへの単なるリンクとなる.PC各マシンにFr e e BSD
がインス トー ルされる際に、システム領域以外のデ ィレクトリは通常ho me
という名称になるが、それを/ ho meO
とし、PC各マシンの/ ho me
が指す実体は、NFS
サーバのデ ィレクトリとした。そこに全てのユーザのホームデ ィレクトリが置かれることになる。
さて、実際に
NI S
を用いてホス ト情報やユーザ情報を設定 しPC側からl o gi
llLようとす るが、l o g i n
することができなかった。Fr e e l i SD
では/e tc/ pass vd
における暗号化 された パスワードをセキュ リテ ィの点から見えないようにしているが、そのためにNI S
がうまく 動作 しないものと最初は思われた。過去の
N。 t Ne ws 5)
などをしばらく調べているうちに、SunOS
とFr 。 。 BSD
ではユーザの パスワード情報の暗号化が異なることがわかった。すなわち、SunOS
ではDES
を用いて いるのに対 し、Fr e e BSD
ではMD5
を用いているのであった。この間題に対 してはすでに 同様 なことをしている人が多 くいたようであ り、Ne t Ne ws 5)
などに解決法がすでに記 され ていた。すなわち、Fr e e BSD
の方でDES
を用いるようにすればよいのである。Fr e e BSD
のDES
のライブラリも公開されておりf t p
で入手可能なのであるが、規制のためにアメリ カか らはf t p
できないという注意点がある。よって、アメリカ以外のf t p
サイトか らf t p
し て取 って くればよいのであった。Fr e e BSD
にDES
をインス トールする際に注意する点が 他 にもあり、パスワードの暗号化が変わってしまうために、従来のパスワードが無効になっ て しまうということである。すなわち、ルー トのパスワードを解除 しないでDES
をインス トールするとルー トでl o g i
mできないので大変なことになる。実は白状すると筆者はこの大 変な事態に遭遇 して しまったのが、Fr e e BSD
をシングルユーザモードで起動することによ りなんとか危機か ら脱出することができたoDES
のインス トール自体は以下のようにして 行 なえた。ca tdes. aa ltar‑1 u nli z l k‑ xpzf‑‑C
/その後
、NI S
による基本的な機能の動作確認をし、それから細かな設定に入 っていった。基本的な機能の動作確認における問題点として
、/e tC/Se rvices
の共有がうまく動作 しな いというのがあった。いろいろ調べはしたものの結局原因がわからず、このファイルについ ては残念なが らNI S
を用いるのではなく各pCにおいてローカルに持つこととした。次の問題点 として
、NI S
におけるne t gr o up
がうま く機能 しないとい うことがあった。/e tc/ hos ts・ equi v
などのファイルにおいて各pc を一つのne t g r oup
として名称 を付 けてNI S
により管理 しようとしていたのであるが、"ワークステーシ ョン⇔ Fr e e BSD
⇔Fr e e BSD"
という三者間におけるrs h,rc p
が同時にはうまくいかなかったOワークステー シ ョンやPCそれぞれにおいて、/e tc/ hos t. l co nf
におけるhos ts,bi nd.nis
の優先 順位があ り、そのために三者間で同時にはうまくいかないのだろうか、同時にうまくい く解 はないものか、などと考えた。論理的に考えてうまくい くと思われる方法はどれもうまくい かなかったため、結局、あらゆる全ての組み合わせを試すこととなったが、それもうまくはマ ル チ O
S・ PC
システ ムの構築21 1
いかなかったOこの作業には
2
日間ほど要 した。/etc/hos ts. e qui v
には結局全pC
のホ スト名をそのまま記述することとした。3‑6 NFS
によるネッ トワーク管理システムの構築環境 として、まず
、NFS
サーバ用PC
一台 (以降、親機)とNFS
クライ アント用PC
一台 (以降、子機)から成るPC
一対 のモデルを構築 した。この最小モデ ル がネットワーク的に問題な く動作すれば、あとは親機の内容を最終的なNFS
サーバである ワークステーシ ョン側に移動 し、子機の内容を全pC
に次 々とコピーすればpC44
台のシ ステムができあがる。さて
、NFS
であるが、PC4 4
台 ものクライアントを経験 したことがなかったため、ネッ ト ワークの トラフィックがどの くらいになるか心配であった。 とはいえ、管理する側か ら考 え ればこれしか方策はなかった。実際に稼働させて不具合があれば、NFS
サーバを複数にす ることで解決を計 ろうと考えていた。複数のNFS
サーバを用いるときにはその複数のサー バ同士の整合性を取るためのミラーリングなどが必要となり、これはこれでまた大変なこと なのであった。NFS
を用いるにあたって、具体的にサーバ機をどうするか、 という問題が出た。 ネッ ト ワーク設計当初は、あまっているPC( Pe nt i um 7 5MHz)
をNFS
サーバ機に仕立て ようと 思っていたが、 よく考慮 し直す とNFS
サーバ機 としてはかなり苛酷な条件であることに気 づき、それまで学生用ワークステーションとして稼働していたマシン( SunI PX,6 4MB)
をNFS
サーバ機にあてることとした。1Su
llとFr e e BSD
とはバイナ リが異なるため、ワーク ステーシ ョン側には、親機で作成 したNFS
サーバ用のファイルを置 くだけとなる。各
pC
からは/e tc/fs tab
により以下のようなNFS
リンクをはることにした。 これによ り、ワークステーシ ョン側の4
つのパーテ ィシ ョンを後 々まで自由に使えることとなる。PC Sun(
ホス ト名: vaka me ) / mnt/wa k a me/ ho mel / ho mel
/ mnt/va k a J n e/ho ne2 / ho ne2 /mnt/va k a me/ho me3 / ho me3 /mnt/wa ka me/ho me4 / ho me4
次に、各pC
におけるファイルのリンクを以下に示す。リンク元 リンク先
/ ho ne
/ homeO / tmp / γar / usr/ Tara / usr/X
ll/ usr/Xll R6 / us上/local / uar/s hare
/ m九t/ va ka me/ ho me2/ho me /usr/ ho neO
/usr/ tnp /usr/ var
/ mnt/ va k a ne/ ho mel /Tara /usr/
xll R6
/usr/ Tara/Xll R6
/ usr/ Tara/local
/ usr/ Tar且/s l l are
以上で示されているように、変更が比較的頻繁に行なわれることが予想される
/ us r/ Ⅹ11 R6
、/ us r/local、/us r/s ha re
は全てワークステーション側の/ us r/ Tara
内に実体が置かれることとなる。 これにより有用なツールのア ップデー トなどが容易に行なえる。
/ us r/ xl
lというリンクを作成 しているのは、Ne t s c a peNa v iga t o r
がこのデ ィレクトリ の存在を前提 としているためである。また
、/ t mp
や/ var
の2
つのデ ィレクトリはPC
内のより広いパーテ ィションである/us r
へ移動 させた。3‑7
容易なシャッ トダウン方法の実現p
cにPC‑ UNI X
をインス トールした場合、終了時にシャットダウンを行なう必要が生 じ る。通常、シャットダウンはルートにs u
してから行われるが、学生にs u
させるわけにもい かず、かといってセキュ リテ ィに穴が開かないような工夫が必要となる。試行錯誤の結果、今回の設定では
、NI S
によるアカウントにシャットダウン専用のアカウ ントを作成 し、そのアカウントでl o g i n
するとシャットダウンが行われるようにした。NI S
を用いているためにシャットダウン専用アカウントのパスワード変更などが容易に行なえる という利点がある。とはいえ
、NI S
のマスターファイルはワークステーシ ョン側にあるため、ワークステー シ ョン側のファイル起動によってPC
側のルー ト権限を実行することになる。3‑8
各種ツールの守凱藍的な初期設定学生が通常用いる各種のツールの中には、ある程度管理者側で初期設定が必要なものがあ る。学生が最初に触れる環境を構築するのだという重要性を考慮すると一種の規範 となるべ き環境を構築する必要があ り、そのために模索の中で行われたこの初期設定作業は極めて時 間がかかるものであった。
3‑8‑1 X W i ndo w Sys t em Fr e e BSD 2. 1. O R
におけるX Wi ndo w Sys t e m
はXl l R6
であ り、XFr e e 8 63. 1 . 2
というバージョンであった。xサーバにおいては
、VRAM
が2 MB
あったために1
ピクセルに1 6
ビット用いること が可能であった。Sun
などの通常のワークステーションでは通常8
ビットであるため、ワー クステーシ ョンよりも色数が多いという快適な環境 となった。サーバのサイズは1 0 2 4 Ⅹ7 6 8
である。フォントもい くつか追加 し、/e tc/ xF86 Co nfi g
に加えた。ウ インドウマネージャーは
fvv m 1. 21
Zを採用 したofvv m
は、Ⅹ1 1 R4
からX
の代表的 なウ インドウマネージャとなったtvm
およびMo t i f
環境下において代表的なウインドウマ ネージャであるmvm
の上位互換とも言えるため、今回はこれを採岡した。1. 2l z
というバー ジ ョンを採用 した理由であるが、このバージョンを境 としてfvv m
は見栄えを重視 した多機 能化に進んで しまったように思えたからである。1. 2l z
というバージョンでウインドウマ ネージャとして重要な機能は全て備えていろように思えた。初期設定 としてタイトルバー内のボタンは左に 1つ右に
3
つ配置 し、mv m
とWi ndo ws 9 5
との上位互換のようにした。 これは、Wi ndo ws 9 5
に慣れている多 くの学生に配慮 した結果 である。ウ インドウフォーカスの際のタイトルバーの色の変化は、薄いグレイから濃いグ レイへの
マ ル チ
OS‑ PC
システ ムの構築2 1 3
変化 というように地味な配色にした。仮想画面の数はやや多いかもしれないが
6
とした。ア イコンボ ックスは右端の縦の領域 とした。各ウインドウの枠の幅は5
とした。ウ インドウ のオートレイズを採用 し動作までの時間を0 . 5
秒 とした。タイトルバーについては、f vwm
のページャやbi
ffなどはそれがあると不必要にリサイズが行なわれる可能性があるため、つ けないように設定 した。タイトルバーが必要ないものはウインドウの枠 も必要ないと思われ るため、枠 についてもい くつかのものにはつけない設定をした。ルートウインドウからのマウス左ボタンにより
、Ⅹter mをはじめとする代表的なツールを
起動するためのメニューが表示 されるようにした (図1 )
。ml ユ 1e
が2
つあるのは、フォントのサイズを切 り替えて起動するためのものである。通常のml l le
は1 4ドットのフォントで起動されるが、Mul e ‑ 1 6を選択すると1 6ドットのフ ォン
トで起動 される。(起動 してか らフォントの大きさを変更することも可能である) 。Tbol s
に マウスポインタがあるとさらに別のメニューを呼ぶことができるようになっている (図2 )
。Rl ogi nにより、従来使用していた 2
台のワークステーシ ョンにr l o gi
mできるようになって いる。また、K‑Rl ogi nは kt e r m
か らrl o gi n
するためのものである。図 1
ルー トウインドウか らのメ
、.‑ユ‑ 図
2 Too l s
の選択ユーザか らの
l o gi nには Ⅹdmを採用 した。Xdmについてはデフ ォルトの設定をそのまま
用いた。 また、Ⅹdmのスター トア ップファイルであるxsessio n内の設定は以下のように
した。
Xrd b‑ loa d/ us r/ Xl l R6/ li b/ Xl l / Ⅹd n/ Ⅹ res o urce s ‑ loc a l fvv n &
Ⅹ mod ma p / us r/ Xl l R6/ li b/ Ⅹ11 / x血/ Ⅹ mod ma p‑ c trl
/ us r/ l oca l/ bi n/ X pbi ff‑ x nlla ng ua gQjaJP. JI S7 ‑ g8 0 mQ tr y48Ⅹ 4 8+0+ 0皮 e xecx te r n ‑C ‑ f n5 Ⅹ8‑s b‑ 8 125 6‑ geo me try80Ⅹ5 +50 +0‑ alo gi n
xmodma p‑ctrl
では、よく行なわれているように、キーボードの「CapsLoc k
」と「Cont r ol
」の機能を交換 している。これにより、左手小指で
「Cont r o l
」 を押すことが極めて容易 と なる。メールの着信を知 らせるためのツールとしてⅩpbi
ff
を起動 している。学生への連絡に電子メールを用いることが多いため、このツールを起動 してお くことにより、学生は
l o gi n
直 後 に誰からメールが届いているかを知ることができる。最後は
、Ⅹtermをコンソールとして exec
することにより終了 している。このウ インドウ は小 さなフォントを用いているが、それは主にシステムのエラー出力の表示用 としているか らである。Xdm
からlogi nした直後の画面には、左上にⅩpbi ff
、コンソールとしてのⅩterm
、右下 にfvvm
のページャである6
つの仮想ウインドウ、 というように隅に3
つのウインドウが あるのみとなっている (図3)
。これは比較的シンプルな初期設定かと思われる。色調はグ レ イを中心とし日に負担にならないよう配慮 した。図
3 l o gi n
直後の画面3‑8‑2 Ⅹpbi f f‑
Ⅹ の国際化 メールの着信を知 らせるbi
ff機能のためのツールと して、Ⅹpbif
fを採用 した.xpbif
fは、From
‥とsubject:
とをポ ップア ップ して表示 し て くれるので非常に便利なツールとして世界中で愛用 されている。また、MI ME
エンコードされた日本語をデ コードして表示することも可能となっている。
ところが、Ⅹpbi
ffをインス トールしたところ 、MI ME
エンコードされた日本語のデコー ドがうまく動作 しなかった。当初はXpbi f
fの方に問題があるのだろうといろいろ調べたが 問題はなく、X
のサーバの方に問題があることがわかった。すなわち、Fre e BSD 2. 1 . O R
に おけるXは国際化のための‑DXLOCALE
というオプシ ョンがない状態でma keされたもので
あることがわかった。Xを入れ替える必要があったが、‑DXLOCALE
というオプシ ョンをつ けてXをコンパイルするのは大変なのでネ ットワーク上を探索 したところ、運 よくコンパ イル済みのものを見つけることができた 4)。それをインス ト ルしてXを給入れ替えする ことにより、Ⅹpbi ff
の日本語デ コード表示が初めて可能 となった。3‑813 1
Ⅹ のその他のツール XWi ndo w Sys t e m
のツールの多 くはFr e e BSD
のpac ka ge
を利用 したためにコンパイルすることはなかったが、い くつかのツールは環境により細かい設定が異なるため、やはり自前でコンパイルする必要があった。
ghos tscr ipt,g h ostvie
vはそういうツールの中の代表的なものである.これら2つの ツールはポス トスクリプ トファイルをプ レビューするためのものである。これ ら以外の
X
のツールとして、tgif,Ⅹfi g,Ⅹgra ph,gnuplot,Ⅹcal,Ⅹme ter
,マ ル チ
OSI PC
システ ムの構築2 1 5 dcloc k,Ⅹdvi
などをインス トールした。3‑8‑4 mul e
電子情報工学科ではUNI X
におけるエデ ィタとして従来ne macs
を用 いていたが、今回のシステム更新に伴いne macs
の使吊をやめてml l le
を用いることにした。ne macs
もml l le
もe macs
を自然言語的に拡張 したものであるが、前者はすでに開発 も終わ り今ではサポートされておらず、現在広 く使われているのはもっぱら後者のmu1e
の方であ る。PC
納入時点でのml l le
の最新バージョンは2. 3
であったので、そのバージ ョンのをイ ンス トールした。インス トールの際にはかな漢字変換をあらかじめ指定する必要がある。かな漢字変換の代 表的なものとして
Wnn
とCa nna
とがあるが、両方を指定するとうまくいかないという報 告 もあったため、今回は、より広 く使われていると思われるWnn
を指定することとした。また、電子情報工学科では
SKK
というかな漢字変換 を従来か ら奨励 していた。SKK
はml l le
上でも問題な く動作するため、これもインス トールすることにした。SI く K
についてはmule
のインス トールの際に指定する必要はなく、mule
のインス トールが終了 した後に追加 することが可能である。臥
上により、mule
の上ではWnn
とSKK
と両方のかな漢字変換システムが動作すること となった。次に
、mule
起動時に読み込まれる初期設定ファイル( / us r/local/li b/ mule/ VER/lis p/
de fa ul t. e l )
を細か く設定する必要があった.やはり一種の規範 となるべ きものであるの で、試行錯誤による憤重な作業となった。ファイルの内容を以下に示す。
;util
( Bet qM Xt‑1i T t e‑a dd‑ neyli nesni l) ( 1 i z t t 1 ‑ nt L mbor‑ T h Odo1)
;Vr L r L
( SetqjBer Y e r ‑list
I(● ' t
m5'=' h tSu
O"' ' m kz L ne. '' ■ i kura' 1 )) ( 8etqemble‑dot L ble‑A‑Synt&XI)
;hi li t
( lea
.d‑li brar yl ' hi
li t
191');GTUS
( loa d ● ● gn1 1 8‑i t t i t. elH)
;T I X
( 8e tqhh‑ progBH/usr/local/bi n/ nh/● ') ( Be tqhh‑l
ib' 1 /t L さr/local/li b/ n
h/'') ( Betql t L h‑e uT L naZ . y‑hoi ght9) ( Be tqr h hl‑ for mfi l●" nil. noco
ztY");TRR
( &utolo&d l trr' ' /t L Sr/local/li b/trr/trr' 'nllt)
;St l PerCi te
( load● ● sc‑de fa ult. elH)
;i 叩 8
11‑ 3. 0・ 09
( &t L tOloz L d ' i B Pel 1 ‑fordl ' i BPe
ll"● ● Chec ktho叩 elli ngofFor dinbt L ff●r・ ' 't) ( 81ob & 1 ‑ Bet‑ke y● ● \eS' '' lB Pe l1 ‑Ford)
( &t l tOlo&d ' i B Pell‑re gi on' ' i8 PB
llH
' ' Checkthe z ! pelli nsof re gi o
n.1 't)
( L t l tOload I i 叩 .
ll‑buffer"i叩 ●
11●●
' ' Check1 : he叩 elli ngofbt l ffer・ ● ●I)
( & ut oloa d' i 叩e ll ‑co mplo te‑ yo r d' l i 叩e
llHl ' Loo kt i pC l l r re ntYO r di ndi c tio n a r ya ndtr yt oc o mple tei t
.' 't) ( & ut olo& d' i 叩0 11 ‑c ha nge ‑ dic ti o na ry' ' i 8 Pe l l
''
H Cha n Sei 8 Pe lldi c ti o nar y. ' '1 : ) 一1 Ill
;; ;;;foz ・Stude ntz l ll Il I
( loa d' ' St l l de nt5‑ gl o ba l・ olH) ( lo
ad ' ' ca Se ‑c h l n Se r81 . 1日) ( loa d' ' pr iYa te ̲C ̲ hod. ) . el' ' )
;8 k k8. 6
( lo a dH s k k ‑i ni l ; . e l' ' )
;To te nYi r on me nl : ( l oa d‖ ny t e ェ2. o l' ' )
; ne Y
( lo a d‖ J n e V ‑ de f& ul t' ' )
( de fy& rha il‑ ya n k‑○r igi n& 1‑ de f& ul t‑i n d o nt & ti o z t OH' ')
( de fya r ma i l‑ ya nk‑ ori gi na ll
quO ti ng‑i A di c
&t o r ' ' > … ' ')
;forlo B Bfre q t l e ntga r ba ・ goco 11 ●cti o n ( 8e tqgC ‑C O n8‑ thro さ hol d1 000 00 0)
;fo rt mS. 9. I ( loa d' ' hi z b e ‑Se t u p. 0 1● ● ) ( 8et q‑ do f & ul tfi l l ‑c o l t L J h n60)
;C 一 mo de ‑ ho ok ( a dd‑ hoo k) C‑ hO d8 ‑ hoo k
( ft l Z t C ti o n
(1z L nbd&( )
( さ● t qfi l〇 一c odi ng‑ Syst e m● Sji B +) ) ))
;8 hB l l ( di B Pl & rt i me) ( S he ll)
まず
、ut
ilにおける最初の行であるが、カーソルを下へ移動するときに新たに改行 コード を入れないようにするためのものである。ut i l
の次の行は、モードラインに現在の行数を入 れるためのものであるoWnn
の2
行 目では「 nn
」による 「ん」の入力を可能 とした。hi l i t
では、各モードに対応する色づけを行なうようにした。GNUS
の行は、ニュースリーダーGNUS
の設定のためのものである。ニュースリーダーと しては、やや重いという弱点はあるものの、従来どおりGNUS
を用いることとしたoGNUS
の設定は多岐にわたるのでg nus ‑i ni t. e l
という別のファイルにまとめ、それをロードす ることとしている。MH
の行では、MH
と呼ばれるメールハンドラについての設定がなされている。メールの 読み書 きはmule
上でMH
を用いることとした.m h‑ r ma i
lの他 にme
vも用いることがで きるようにしてある。MH
のバージ ョンは、当時の最新である" MH6 . 8 . 3 . J P2 C "
を用いた。TRR
の行では、タイピング練習ソフトであるtr r
の設定をしている。s upe r c i t e
の行では、メールの返事を書 く際に元のメールに引用符をつけるためのツール であるS upe r c i t e
の初期設定ファイルをロードしている。s upe r c i t e
の設定 もやはり多岐に わたるため、s c‑ de fa ul t. e l
という別のファイルをロードすることとした.i s pe
llの行では、スペルチェッカーとして広 く使われているi s pe
llについての初期設定がマ ル チ
O S・ PC
システムの構築2 1 7
行なわれている。f orSt ude nt s
の3
行では、電子情報工学科ローカルの設定を行なっている。 これは従来 好評であった各種設定をまとめたものである。stude nts‑ glo bal. el
においては、便利な キーパインドや関数、オー トセーブの設定などを行なっている.case‑cha ngers. el
にお いては、カーソルが置かれている単語の大矧 ヒ・小文字化 ・先頭のみ大文字化などのため の関数が定義されている。pri vateーC̲ mode. el
においては、Cモードのときにさらに便利 になるような関数が定義 されている。s kk
の行においてはSKKの初期設定ファイルをロードしている。
Te X e nvi r onme nt
の行においては、muleからL A TEX
の処理を行 なえるような関数など が定義 されたmyt e x2. e l
というファイルをロードしている。me wの行ではメールリーダ me wの初期設定ファイルのロードと引用の際に必要 となる変
数を定義 している。ga r ba gec ol l e c t i onの行では、割 と頻繁に行なわれるガーベージコレクシ ョンの回数 を少
なくするように設定 している。t m5. 9. 1
の行では、MIMEを扱 うための関数群である t m
の初期設定ファイルをロードし ている。その次の行では、
f i1
1モード時の横幅を6 0
に設定 している.C ‑ mode ‑ hook
の行では、Cのソースファイルを開いたときに漢字 コードがs j i s
になるよ うに設定 してある。最後に、モードラインに現在時刻を表示 させ、*shell*バ ッファを作成することにより、
mule
が立ち上がる。3‑8‑5
その他のツール 文書処理システムとしてL ATEXをインストールしたoL J NEX
にも様 々な種類がありどのバージョンをインストールするか迷 ったが、結局は、電子情報工 学科で従来用いていたのと同じバージ ョンであるASCI
Iのjtex 1. 7
をインス トール した。これはソースからのコンパイルとなった。
他 に、ne
tsca pe,perl,flex,mpeg̲ pla y,is pell,mtools,bison,sox,lha L ,
G NUma ke,gzi p,GNU se a ,GNUa vk,gce,bas h,tcs hなどを有用 なツールとして
インス トール した。また、メールの送受信のために必要 となる/
usr/lib/se ndmail 、/e tC/Sendmail. cf
の ファイルは、WI DE
のパ ッチをあてた最新版のものに入れ替えた。3‑9
カーネルの再構築デフォルトの/kernelをそのまま用いると立ち上げ時に存在 しないデバイスを見に行 こう とするために起動が遅 くなってしまう。そのため、存在しないデバイスを削 り新たな/kernel を作成することにより立ち上げを高速化することが可能 となる。
3‑10
子機の複製以上の「連の作業により親機 と子機の一対が完成 した後に行なうことは、親機のサーバ部 分をワークステーション側にコピーする作業と、子機の内容を他の