LONG PATH for FreeBSD
FreeBSDへの道

3/16/1997 CD-ROM発注

仕事がらみで UNIX(BSD/OS 正確には BSD/386 V1.1)をイジることになってしまった。ド素人がなんとか使うには、やはり自分で適当にいじれる計算機がほしい。で、NEC PC9821Ap2にインストールすることにした。98移植チームのみなさんに感謝。バージョンは、2.1.5。

3/19/1997 インストール

20:30インストールを開始。が、インストーラが起動せんのよ。SCSIカードを抜けばOKみたい・・
ちなみに、うちの9821Ap2は、9801FA用SCSIカード(PC-9801FA-02)を実装している。(遅いぞー)
22:00 いろいろ悩んだあげく、システムセットアップメニューで「内蔵SCSIのDMAチャネル」を「#0」にすることでやっとインストーラ起動。
ほっと一息ついて LANカード(借り物)メルコ LGY98 を差し込み、リセットすると・・今度はブートさえしてくれないではないか。
うぅむ。これはきっとLGYとSCSIのIRQがぶつかってるに違いない・・と気づいたのは30分後。
22:40 SCSIカードのIRQを変更して、ようやく前設定開始。
23:40 ファイルコピー開始。インストール元は当然CD-ROM。
24:00 コピーが終わって FreeBSD自体は無事起動したものの、Xで立ち上がってくれない

※ この段階で、Xに走るのは、やめといたほうがいいのである

3/22/1997 再インストール

ブート途中で ed0: timeout なんてつれないメッセージが出る。 気を取り直し、LANカード無しでインストールし直す。
ちなみに filesystemは、こういうふうに分けている。
wd0a/20MB
wd0b<SWAP>43MB
wd0s1e/var32MB
wd0s1f/usr228MB
sd0s1e/usr242MB

ネットワークはさておき、まず X-WINDOWをなんとかしなければ・・・。
(98インストールのドキュメントによると、LGYはIRQ6に設定する必要があるようだ)

※ 前にも書いたが、X よりもネットワークの方が大切である。当時は何を考えていたのだろーか

3/24/1997 ネットワーク接続

X、X・・! といっているにもかかわらず、先にLANがOKになってしまった。
LGYのIRQセットはDOSで行う必要があるので、フロッビから起動し、LGYSETUPでIRQ6(=INT2)にセット。これで再起動すると、途中しばらくダンマリ状態になったものの、エラー無しで起動してくれた。しかし、どうもクサイ。

WINから Pingをかけてみた。おぉ! ちゃんと返事が返って来る。気をよくして、Telnetをやってみる・・が、・・ダンマリ状態。一応 Apache もインストールしたので、Netscapeから直接IPアドレスを入力して接続を試みる・・これもダンマリ・・と、思ったら、不意に Telnetの方がつながった ! なんだなんだ !・・という間に Netscapeの方にも index.htmlが表示された。
ふーむ。これって、もしかして DNSを引きに行ってるのかもしれないな。設定ファイルにネームサーバ書き込んじゃったし・・ブートが異様に遅かったのもこれかな?

※ そーだよ。それだよ。存在しないDNSのアドレスなんか設定すんじゃねーよ

3/25/1997 ホストファイル hosts

自宅のLAN(たった2台・・クロスケーブル接続)に、DNSは存在しない。以前(1988年頃)お勉強したKA9Qパッケージ(NOS98)では HOSTファイルというものがあったのを思いだし、参考書をあたってみると、ありました。
/etc/host.conf の bindの前に hostsと書いた行を追加。これでブート時のダンマリ時間が無くなった。これでも telnetとかではだいぶ待たされるので、/etc/hosts ファイルに、WIN側のIPアドレスとホスト名を追加。これで一発接続。

※ 今の hosts.conf は、デフォルトでこうなってます

3/29/1997 ついに X が走った startx

だいたい、X の起動コマンドさえ知らなかったのだ。WIN3.1で「win.com」を知らないようなものである。それでもWebや雑誌で、なんとか「 startx 」というのがソレらしいということだけは判った。
startx を実行すると、「X サーバが無いか、パス設定されていない」みたいなエラーが出る。もちろん、.cshrcや.profileにはPATH設定してある。この解決にはかなりの時間を浪費してしまった。すなわち「 link 」のなんたるかがまったく判っていなかったのであった。

で、ようやく ln -s /usr/X11R6/bin/XF86_NECS3 X と、することに行き当たったのである。

しかし、これでもNGなのだった。startxすると画面がブラックアウトし「おぉ、ついに起動か?」と、待つこと数分・・(^^;)結局どーしよーも無くなって telnetで loginし、/sbin/shutdown -r now を実行する羽目になってしまうのだった。

※ CTRL+ALT+BS で復帰。また、今はインストールすると勝手にシンボリックリンクが作成される

Xの設定には、XF86Configという設定ファイルが必要なのだが、これを生成してくれるプログラムが「xf86config」である。気をとりなおして XF86.helpを読んでみたら、なななんと! PC98では xf86config は使うな と書いてある。・・唖然。だ、ダンナぁ、そりゃありやせんぜ。しかし、考えてみりゃアタリマエか。
「 XF86Config.98 」を参考にしろとも書いてあり、その「 XF86Config.98 」を探すが、そんなファイルはどこにも無い!!
だが、CD-ROMの中の X98312B0.tarというアーカイヴの中に「 Sample.X86Config 」を発見。これと Web上の情報を参考にして、なんとか「 XF86Config 」を書くことができた。
そして再び startx・・・ついにモニタ上に、いわゆる「 X 」が出現したのであった。

長かった・・・。夢にまで見た(嘘(^^;))「emiclock」X11版が動いている。
しかし、早速問題が・・・ WINDOW画面がモニタの左にはみ出ているのだ。まあ、モニタの調整で真ん中にズラすことはできるのだけれど・・・それに、日本語表示ができなくなってしまうのは困る。

道のりはまだまだ遠い・・

※ 今では、PC98用の XF98Setup というX設定用日本語ソフトもある

3/30/1997 MonitorのMode XF86Config

WINDOW画面が左にズッてしまうのは、 XF86Config 中の「 Section "Monitor"」の記述が違っていたためで、Mode "1024x768H" とすることで正常にモニタの中央に来るようになった。参考までに、うちの PC9821Ap2の XF86Configは、 こう なっている。

※ XFree86-4 では、設定項目がまるっきり変わっているので注意

また、.xinitrcファイルを書き換え、fvwm95-2を使ってデスクトップを Windows95風にしてみた。確かにちょっと見では Win95である。だからといって操作性までいっしょのわけはないが・・・。( *.xpm のアイコンファイルはどこにあるんだろう?)

3/31/1997 日本語表示 jless

日本語表示の問題がほぼ解決。PAGERに 8bitを通してくれる jlessを使い、.cshrcファイルで環境変数 LESSCHARSET に japanese を設定( setenv LESSCHARSET japanese )する。 fdの設定ファイル fdrcでも、PAGER=/usr/local/bin/jless と設定することでOK。
X では、xtermのかわりに漢字対応の ktermを使うことでこれも表示可能となった。

※ 現在の jless では、setenv JLESSCHARSET japanese とする

4/3/1997 Win のサーバにする samba

samba とは、UNIXをWindowsサーバにするソフトウェア群である。いろいろやってみて、一応、Win側から FreeBSDのホームディレクトリが見えた。ファイルも覗ける。どこかの Webページで、NetBEUIが必要・・という記述があったけれど、TCP/IPだけ設定してあればOKである。(Microsoft Network クライアントは設定しておく)
しかし、Winの「ネットワークコンピュータ」の中には見えてこないのだ。おかしい・・。「コンピュータの検索」では、ちゃんと出てくるのだが・・。

※ 見える/見えない と アクセスできる/できない は、違う事象である。Microsoft Networkは難解だ

4/22/1997 sambaその後

自前のLANカードを購入した。3年ほど前は 5万円もしたアイテムだが、今では 1万円でおつりが来る。

※ 今は千円でおつりが来る場合もあるよな

さて、「ネットワーク・コンピュータ」で sambaサーバが見えない件は、あっさりと 解決 してしまった。
結局、設定ファイル lmhosts でのブロードキャストアドレスの書き方だったのである。

xxx.xxx.xxx.xx kpi
xxx.xxx.xxx.yy JA7KPI S

1行目 sambaサーバのIPアドレス(スペース)Windows上でのサーバ名
2行目 サブネット考慮のブロードキャストアドレス(スペース)Windows上のワークグループ名(スペース)S
某雑誌の記述例を鵜呑みにし、ブロードキャストを 0.0.0.0 に設定してしまったのが今回の敗因であった。(^^;)そう、うちのLANのアドレス設定は「勉強のため」サブネットが無いにもかかわらずサブネットマスク設定をしているのだ。

※ なにごとも基本が大事である。知ったかぶりして複雑なことをやるとハマるといういい例だ。ちなみに、もう lmhosts でこんな設定をやる必要はない

というわけで、だんだんサーバらしくなってきた 9821Ap2である。OK ディック、次のモードはなんだ?
・・なに ? GAME?・・・まず、CD-ROMを mountしなければならない。
mount -t cd9660 /dev/cd0a /cdrom ・・・・ほとんど呪文(^_^;)

5/30/1997 カーネル再構築って・・?

立ち上げ時、存在しないデバイスにメモリを喰われているのは気にいらない・・と、カーネル再構築に手を出す。GENERIC98を書き換えろ、ということになっているが、そのファイル自体の所在が不明で、頭を抱えること 1週間。

ようやくCD-ROMの /dists/src98/kern98.tar の中に発見。GENERIC98の書き換えは終了したが、コンパイルには当然ソースが必要。Ap2にはディスク容量の関係でソースファイルはコピーしていない。CD-ROMからカーネルソースと98用ソースを展開し、パッチあての後コンパイルという手順になるのだが???

※ 今では、わざわざこんなことをしなくても、メニューから簡単にインストールできる

さて、しばらく書かなかったが、この間に xpmをインストールしてアイコンの問題も解決し、xdmで快調に動いている・・というのは半分嘘で、xcdplayerを入れて動かそうとしたら、いきなりハングアップし、filesystemがおかしくなってしまったのだ。

※ fsckでエラー出まくり

原因は不明。もしかして、サウンドデバイスがカーネルに無いのが原因なのだろうか?・・ということもあってカーネル再構築を考えたのだが・・うーむ。まだもう少しかかりそうな気配である。

6/10/1997 再々インストール

アクセス不能ディレクトリができるなど、やはりfilesystemが異常としか思えないので、思い切ってシステムを再々インストールすることにした。
各種設定ファイル等は /home/tada にコピーし、samba経由で WIN機に退避。

今回のディスク切り分けは以下のとおり。
wd0a/25MB
wd0b<SWAP>42MB
wd0s1e/usr256MB
sd0s1e/usr242MB

ルートを増やしたのは、/tmp を考慮。

インストール自体は、あっさり終了。初回あれだけつまづいたのが嘘のようである

※ そーいうものだ

ブート後、ftpで退避ファイル群を戻し、めでたくもとの状態に戻ったAp2であった。

6/11/1997 カーネル再構築 実行!!

カーネルソースの在処がやっと判明した。
CD-ROMの /cdrom/dists/src/ssys.* である。リコンパイルには /cdrom/dists/src/sinclude.* も必要。

cd /usr/src
cat /cdrom/dists/src/sinclude.* | tar xzf -
cat /cdrom/dists/src/ssys.* | tar xzf -
・・と、やれば /usr/src にカーネルソースが展開される。
このソースはIBM PC/AT互換機用なので、PC98用のパッチをあてなければならないそうだ。

※ 今では、もうパッチなどあてる必要はない

cd /usr/src/sys
tar xzf /cdrom/src98/kern98.tar.gz
./patch98sys.sh
・・で、ソース準備完了である。

ここで、カーネル・コンフィギュレーション・ファイル (GENERIC98をCOPY 修正後 Renameしたもの)の中身を再チェック。configし、OKであれば make depend all install を実行する。

実は、うちのAp2では make all のところで エラーコード=1 で Stopしてしまったが、元々の GENERIC98 と比較していろいろやってみたら、controller pci0 のコメントアウトを元に戻すことで何故か(^^;)成功してしまった。・・・たぶん、なんかあるんでしょう。

カーネル再構築後のパフォーマンスだが、使用可能メモリが200KBくらい増え、起動時間も短縮された。

しかし、肝心のサウンドデバイスの組み込みについては・・実はまだ確認していないのであった。(おぃおぃ)

8/10/1997 久々だなぁ

ずいぶん なーんにもしてなさそうに見えるわけだが、実はこの間、いろいろやっていたのである。

まず、 sendmail_8.8.6 をインストール。なぜか WIDEのパッチまで当ててしまった。パッチのあて方はあれで良かったのだろうか。 8.8.5とはだいぶ違ってたな。
ついでに、 CF で sendmail.cf を作った。これは今、他のサーバでも使っている。(CFなんてのはすべての計算機に入っている必要はないし、FreeBSDで作ってバラまいても同じだものね)

おまけで Apache_1.2.1 もインストールしたが、これがなかなか動かなかった。 インストール自体は1.2.1からさらに楽になり、 Configuration ファイルをちょこちょこ直し、 ./Configure と make だけで OKだったのだが、ServerRoot に logs というディレクトリが無いと 「lock fileがオープンでけん」と だだをこねて起動してくれない。これに気づくまで丸一日費やしたが、インターネット上に不具合の報告は無いようだ。しかし、これって どう考えても「不具合」だよなぁ。

と いうわけで、ソースをGETしてきて展開、コンパイルできる「UNIX初心者」にようやくなれたという感じ。やはり、カーネル再構築がひとつのステップになった・・といっていいだろう。

さて、巷では 2.2.2Rも出ているようだが、また再インストールかな?

10/3/1997 復活の9821Ap

2.2.1Rを入手し、再インストールした。
今回は、職場で 4年間のサーバ勤めを終えた PC-9821Ap にもインストール。

3/8/1998 2.2.2R

既に2.2.5も出てるようだが、2.2.2Rを入手し、インストール。今回のディスク切り分けは以下のとおり。(メモリは33MBに増設)
wd0a/263MB
wd0b<SWAP>60MB
sd0s1e/usr242MB
だんだんルーズになっていく(^_^;)

FreeBSD 2.2.2 Errata Notesにもあるように、「root でログインすると, "login_getclass: unknown class 'root'" というメッセージが出る」ので、login.confを ftpで取ってきた。どうもソースにこのファイルが入ってないらしい。
ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/src/etc/login.conf して、
# cap_mkdb /etc/login.conf

カーネル再構築には 13分かかった。いやー、makeで Warningが出ないってことはいいですねぇ。この WarningやらError Code 1 でずいぶん勉強させてもらったなぁ(^_^;)。おっと閑話休題。2.2.2のGENERIC98は、2.2.1Rとほとんどいっしょだけど、ちょっとだけ追加項目がある。
configファイルはWin上で修正し、フロッビに落として、
mount -t msdos /dev/fd0 /dos と、やって フロッピ(2HC)を /dosにマウントし、COPYした。・・が、改行コードをLFだけにするのを忘れて configでエラー

※ 今でも同じ失敗を重ねている。えぇい、いまいましい ^M !!

pingが Win側に飛ぶことを確認し、まずは sambaをインストールする。起動スクリプトを /usr/local/etc/rc.dに置くが、起動してくれず、しばらく悩む。これって、foo.sh・・というように .sh という拡張子をつけたファイル名にしなけりゃダメなのね。

3/11/1998 FD

DOS用ファイル管理ツールとして超有名な FD のクローンを makeしてみた。FD-1.03gである。ほとんどmake一発。楽〜。
しかし、FDクローンはUNIX管理者のためのツールではないのだ。作者曰く「日々の管理で FDclone に慣れてしまうと、事故の際の特殊な処理や shell programing 等のスキルを高めることができなくなってしまうという弊害があります」・・・うーむ。そのとおりだなー。
Unixを本格的にイジるようになって、ちょうど 1年か。

3/15/1998 WM

XのWindow Managerをいろいろ試してみる。
qvwm 日本で開発されたものなので、いいかな?と思ったが、いまいち不安定。localeがらみでデスクトップに日本語表示がうまくいかないという問題もあった。
fvwm 安定だが、起動時のwavファイル再生ができない。nasもインストールしたのだが・・? audio serverにコネクトできない・・というエラーが出た。

しかし、これはサウンドデバイスを作らないとNGということで、
# cd /dev
# ./MAKEDEV snd0

これでOK。やっと myu.auを聞くことができて一安心。

※ サウンドデバイスの作り方は、今でも変わらない

この他、twmfvwm95 も試してみた。が、例えば emiclockの位置が twmではマウスで移動できるのに他のWMでは固定されていてできない。
その他、わけの分からないエラーが出ることもある。実際、Xで使用することはあまりないのでどーでもいいような問題なのだが、やはり気になる。 Powered by FreeBSD - Logo

FreeBSDへの道 Part 2 | BACK to COMPUTER | BACK to FRONT PAGE