このあいだのFreeBSDを学ぶ人のためにを読んで、 (もうちょっとスペックのいい) キャンビーを上げますという奇特な方からの申し出があったので、 ありがたくいただきました。 前のマシン(ミルakaハチソン)には引退してもらい、 このマシンを子ミルと命名してまともに稼働するFreeBSD(98)機にしたいと思います。
ええと。ようやくコンピュータを立ち上げたので、 さっそくFree-BSDをインストールしてみましょう。 ちなみに、今回のコンピュータは
フロッピーの調子が悪いと思って子ミルを解剖していろいろ調べたところ、 けっきょくCPUのオーバドライブのディップスウィッチを誤って 変更していたことに気付く。う。 こんなことで1/4日近く費してしまったのか。 あと、何が原因なのかわからないが、 メモリは32MB使えるようになった。
例によって98機で作ったディスクをIBM機が認識してくれないので、 2.2.8からインストールすることにする。あとで3.4に入れ直そう。
まあ2.2.1を入れて、 3.4用のブートディスクをなんとか作ればいいかと思って 2.2.1をインストール。 一回目、適当にやるとちゃんとブートしない。 もう一度やりなおそうとしたところで、 眠くて死にそうになり、少し寝る。
目を覚ましてから、例の『FreeBSD徹底入門(98)』に従って再インストール。 こんどは起動できた。さて、これでブートフロッピーを作れるのかな。
あれ、まだftpできない。ネットにつなぐのはどうやるんだっけ。
/stand/sysinstallで何か設定しなきゃいけないのか。
/stand/sysinstallの表示が文字化けだらけなので、
本に従って
set term=cons25w
とするときれいに表示されるようになった。
これでrootのシェルはcshであることがわかった。
shの場合はexport TERM=cons25wとやればいいらしい。
それからネットワークインターフェースを設定。
ちなみにネットワークカードの設定は前回と同様:
IRQ=3, I/Oport=0xc8d0
で動く。
あれ、pingもまだ有効じゃないな。とりあえず再起動してみよう。 あ、再起動したらpingできるようになった。よしよし。 じゃあ次は、ftpでftp.media.kyoto-u.ac.jpに入り、 3.4用のブートディスクが作れるようにファイルをとってこよう。
ん? ftpのときに-aのオプションが効かない。しかたないのでanonymousで。 あ、guestでもいいのか。3.4-RELEASEのfloppy98のところから kern.flpとmfsroot.flpをget。これだけでいいはず(某君によれば)。
ではブートディスクを作ろう。
dd if=kern.flp of=/dev/fd0.1200 bs=15k
とすれば…うまくいった。万歳。もう一つも
dd if=mfsroot.flp of=/dev/fd0.1200 bs=15k
として…あ、うまくいったようだ。
じゃあkern.flpで起動してみよう。
(以前はここで挫折した)
あ、どうもちゃんと起動しそうな様子。やったあ。 mfsrootフロッピーに入れ替えて…やった。無事起動しました。 あ、2.2.1のsysinstallとは若干違う。が、まあなんとかなりそうだ。
パーティションはデフォルトのままにしようかと思ったが、 ciceroなどを参考にして/homeを1500MBほど作っておこう。 大きすぎかな?
wd0s1a / 50MB UFS Y wd0s1b swap 69MB SWAP wd0s1e /var 20MB UFS Y wd0s1f /usr 1464MB UFS Y wd0s1g /home 1475MB UFS Y
ええと次は配布ファイルか。「すべて」にするか。 あ、暗号とportsはやめておこう。portsはあとでいいや。
ftp先はftp.media.kyoto-u.ac.jpで。あれ、書いてないな。 じゃあftp://ftp.media.kyoto-u.ac.jp/FreeBSD-PC98/で。 ネットワーク設定もやる。 うまく行くかな…。
あ、ftp先の指定は
ftp://ftp.media.kyoto-u.ac.jp/pub/FreeBSD-PC98/dists/
とするようだ。時間がかかりそうなので勉強しよう。新聞も読まねば。
あ、やっとインストールが終わった。 NFS設定とかはあとでやろう。 LINUXコンパチビリティ? なんだろう。 まあなんにせよ両立することはいいことだから一応YESにしておこう。
げ。LINUX関係のファイルをftpしているあいだに
/mnt: write failed, file system is full
とか出てきた。やばいなあ。
X-Windowの設定もあとまわし。よし、じゃ再起動。
あれっ。起動しない。bootの途中で終わって止まってしまう。 えええ。なんで? 画面の上の方に緑の線が出てる。これは。ひい。 `boot:'が出てきたときに-cを打つとリセットがかかってしまう。 わ。打つ手なし。
考えられる原因といえばLINUXコンパチのファイルの入れ損ねぐらいだが。 仕方ないのでもう一度最初からやってみるか。 今度は最小のセットアップで試してみよう。
パーティションを少し変えてみよう。varを多い目に。
wd0s1a / 50MB UFS Y wd0s1b swap 69MB SWAP wd0s1e /var 244MB UFS Y wd0s1f /usr 1220MB UFS Y wd0s1g /home 1495MB UFS Y
ええと、配布ファイルは最小構成でやってみるか。これでどうだ。
あ、今度はずっと速い。 とりあえずLINUXコンパチビリティはNOにしておこう。 さて、再起動。あ。動いた。なんでだったんだろう。 いろいろ入れすぎたせいか、 LINUX関係のファイルが途中で入り切らなくなったからなんだろうか。
とりあえず3.4の起動までこぎつけたので、いったん終了。万歳。 今後の目標。
さて、続き続き。まずftpで以下のパッケージをget(入手)。 /usr/tmpというディレクトリを作ってそこに入れる。
ええと、tcshはchpass -s tcshとしてからどうすんだっけ、 めんどうだから以前の.cshrcファイルを使おう。 あ、快適になった。
じゃあ次はemacsだ。あれ、なかなか展開しない。大丈夫かな…。
一応終わったが、
/usr/libexec/ld-elf.so.1: Shared object "libXaw.so.6" not found
だそうだ。X関係かな。どうしよう。
ま、おいといて。lynxはいったんログアウトしてから使うとうまく起動。 mtoolsとja-less、rsync、sudoはたぶんうまくいった。 次はskk。しかしskkを入れてもemacsがだめじゃ話にならないな。
あれ、
ja-skk-elisp-9.6
ja-skk-tools-9.6
が足りないそうだ。ftp先をどこかで指定してやる必要があったのかな。
とりあえずftpでその二つをget。
もう一度やってみよう。あ、うまくいったようだ。
emacs…もうめんどうだからmule-2.3を入れよう。また日和ってしまった。
pkg_add mule-2.3をすると、
sed: /usr/share/info/dir: No such file or directory
と言われる。とりあえずmkdirで作っておこう。
いったんpkg_deleteしてからもう一度。
いったんログアウトして。ぎゃ。また
/usr/libexec/ld-elf.so.1: Shared object "libXaw.so.6" not found
って言われてしまった。まいったなあ。
仕方ないのでネット上で調べる。あ、 あった。 やっぱりXを入れてないからだ。とりあえずbinだけ入れよう。
入れた。じゃあやっぱりemacs-20.4にするか。
あれ、binだけ入れてもやっぱり
/usr/libexec/ld-elf.so.1: Shared object "libXaw.so.6" not found
が出てしまう。しくしく。
めんどうなので、X関係のものを全部インストール。これでどうだ。
あれ、まだだめ。う〜ん、なぜなんだろう。 あ、今入った情報によると、 パッケージは/stand/sysinstallでやると 自動的に必要なファイルを取ってきてくれるそうだ。 じゃあそれでやってみよう。ついでに:
も入れよう。
あ。すべてうまく行ったようだ。emacsも起動。 じゃ、あとでskkの設定をしよう。
じゃ、skkの設定を。 その前に全然マニュアルが入ってないみたいなので (そういえば最小構成でインストールしたんだった)、 /stand/sysinstallして:
を入手。ええと、skkはどうやって使うんだっけ。 たしか某氏から以前メイルをいただいたよな…。
とりあえず、
apel-emacs20-9.22
というのと
leim-20.4
というのをパッケージで入れてみる。
これでダメだったらemacsには縁がなかったと思ってmuleに日和ろう。
う。
cannot open load file: skk
と出る。これはどうしたものか。
なんか「パスが通っていない」という問題のような気がする。
お。pascalの.emacsを参考にして
(setq load-path (append '( "/usr/local/share/mule/site-lisp/skk/" ;SKK 9.6 ) load-path))
としたらうまく行った。しかしまだ漢字も▽も出ない。
これはたぶんskkの設定がおかしいな。いや、
Variable enable-multibyte-characters is read-only
などと出てるから、どうもこれはemacsの設定のどこかに問題があるようだ。
う〜む。パッケージからやるのはやめて、
ここはmakeからやってみるか。
じゃ、まずいくつかpkg_deleteして(apel, leim, emacs, skk)、と。
次にftpで
emacs-20.5a.tar.gz
leim-20.5a.tar.gz
apel-10.2.tar.gz
を入手。
さらにskk.kuis.kyoto-u.ac.jpにftpして
skk9.6.tar.gz
を入手。
さらに、
ここから
skk10.56.tar.gz
も入手。
emacsとleimをそれぞれgzip -dで伸長させてからtar xfvで展開。
全部emacs20.5フォルダに入ったので、
./configure
make
make install
と呪文を唱えてみる。
あれ、失敗。起動しない。ずいぶん時間がかかったのに。
もう一度やってみよう。今度は
./configure --with-X=no
としてみるべし。
それからmake。
あれ、さっきmake installするの忘れてたんじゃ。
…。これでもだめだったらやっぱりmuleにしよう。
そもそもなぜこんなに苦労してまでemacsにせねばならないのか。
あ、とりあえずemacsは動いたぞ。じゃあskkを。あれ。 なぜかskk9.6.tar.gzをgzip -dできない。 crc errorというのが出る。しかたない、もう一度ftpしてこよう。
あ〜、もうめんどくさい。muleでいい、muleで。 /stand/sysinstallからmule-2.3とja-skk-9.6をインストール。
う。一発でうまくいった。なんなんだ。
(以前作った.emacsや.skkファイルを流用した)
ここから
html-helper-mode.elとtempo.el(2.19.1.1)を取ってきて、
mule -batch -f batch-byte-compile *.el
と呪文を唱える。これでhtml-helper-modeが使えるようになり、
ようやく文明化した。あとはウェブとメイルか。これはまた明日。
目標達成度。
今日はapacheを入れてみます。Xもやってみますか。
あれ、apacheは一応立ち上がってるのか。じゃあ Xから。/stand/sysinstallからXF98Setupで:
これで起動すると。あれ、立ち上がらない。 ディスプレイも真っ暗になってしまった。やばい。 あ、なんとか復活した。
もう一度。カードをPC9821Cb(NKVNEC)→PCNKV/PCNKV2/NEC_CIRRUSにしてみよう。 あれ、まただめだ。どうやるんだっけ。
ちょっと不安になったので、 もう一度ftpでXFree86関係のファイルを入手。
もう一度PC9821Cb(NKVNEC)で。 う〜む。それでもだめ。 あと変えれるのはディスプレイの設定ぐらいか。 もうめんどうだからあきらめるかな。
あ、カードの設定のときに出てくるREADMEファイルを見ると ビデオカードの詳細な注意が書いてある。 どうも色数を256色でやるといいようだ。あ、立ち上がった。
ウィンドウマネージャが入ってないので:
などをインストール。げ。 調子にのって1024*768にしたらまた真っ暗になってしまった。 telnetして強制的にshutdown。死んだか? あ、大丈夫そう。 あ、いや、大丈夫じゃないな。やばい。
とりあえずもう一度XF98Setup。今度は
High Frequency SVGA, 1024*768 @ 70 Hz
1024*768, 256色
でやってみた。
一応動くようだ。
と思ったらまた反応しなくなった。
死んだようすなので、ふたたびtelnetでshutdown。
また殺ってしまった。
再起動してから、もう一度さっき動いていた設定に戻す。 とりあえずこれでいいや。
.fvwm2rcのファイルは繁雑なので、 fvwm2からtwmにしてみると、twmも(きちんと設定してあるやつは)繁雑だった。 .xinitrcをいじり忘れていたので、 なかなかtwmが起動しなくて困る。ああ、時間の無駄。
Xは動いたことにして、 次はapacheの設定。 Japanized Apache Server Projectや ciceroのファイルなども参考にしながら、 適当にhttpd.confファイルをいじる。 うん、動きました。
目標達成度。
まあ、メイルはとりあえず必要ないし、 プリンタの設定もまた今度やることにして、 一応これでいったん終わっておきましょう。 今回は割と順調に行きました。
ついでに以下のものを入れました。perlも勉強しないと。TeXも。
ん、音は出るかな。/usr/X11R6/lib/X11/xmcd/config.shで設定してみて…。 あれ、ぜんぜんあかん。
cdromが読めないので、/etc/fstabに次の一文を足してから、mount /cdrom。 あ、mkdir /cdromもする必要あり。
/dev/wcd0c /cdrom cd9660 ro,noauto 0 0
ん、netscapeが動かないので3.04に入れかえてみます。だめかな。 あ、3.04はうまく動きました。
う〜ん、普通のcdromはmountできるのに、音楽用CDはmountを拒否されてしまう。 enyaだからダメなのかな。
ついでに
xcdplayer-2.2と
radio-2.0.4
も試しに入れておこう。
あ、後者は発信する用だ。
う〜。こんなことしてる場合じゃないのだが、カーネルの再構築中。 ここが参考になる。PCM音源に設定したり、 使わなさそうなdeviceをコメントアウトしたり。
30分近くかかってmake depend; make。(もっとかな…) 次にmake install。これはすぐ。では再起動。
cd /dev
して、
sh MAKEDEV snd0。
これでサウンドデバイス用のスペシャルファイルができるらしい。
あ、enyaだ。ここに書いてあるとおり
xcdplayer -device /dev/wcd0c
とすれば成功。やったあ。
(xcdplayer -c /dev/wcd0cだと動かない)
しかしxmcdはやっぱり動かない。 Q&Aにも書いてあったけど、 デバイスを選択するときにどうしても/dev/rcd0cしか選べないんだよな。
あ〜もうあきらめた。
性懲りもなく続きを。 ちょっとmewを入れてみます。 ftpで
を入手。これはパッケージなので楽です。 mewはmewのウェブサイトから1.94.2を取ってきて、 /usr/local/share/に放りこみ、 make→make install。再起動してimsetupすると。
う。なぜかmule上では起動しない。
pathが通ってなかったのでpathを通したら、
`mew.el' was compiled for Emacs 20なんて言われてしまいました。
やっぱりemacsを入れないとダメなんですかね。
というわけでemacsをもう一度。
あれ、emacs上でmewを立ち上げたらFatal error (6)が出る。 う〜ん。
それはおいといて、skk-10.59を入れてみる。 あれ、emacsで立ち上げると漢字が出ないで????になる。 これはどうすればいいんだろう。emacsの設定の問題だな。 と思ったらmuleでも同じ症状が。あ〜もうだめ。
腹が立つのでmule, skkなど全部いったん削除。死ね死ね。 もう一度emacs-20.5を入れてみる。
う〜ん、同じ症状が。ドットファイルに変なことを書いてるのかな。
あ。親切なお方のおかげで問題が解決。.emacs.elファイルに
(set-buffer-file-coding-system 'iso-2022-jp-unix)
と書くと無事に日本語が出るようになりました。よかった。
あとはmewか…。
あ、xemacsだとmewは動く。メイルを送ることも受けることもできる。 ということは、 emacs上だとabortされるのは.emacs.elの記述に問題がありそうだ。
う〜ん、やっぱりmewは動かない…。しかしとりあえず今日はここまで。
あ。html-helper-mode.elなんかも消えていたので
ここから
html-helper-mode.elと
tempo.el
を取ってきて、
emacs -batch -f batch-byte-compile *.el
と呪文をかけてemacsのsite-lispに入れておいた。
skkのserverも入れる必要あり。
をもう一度入れました。
あ。xemacsでhtml-helper-modeを使うには、
/usr/local/lib/xemacs/site-lisp/
以下に上の関連ファイルを入れる必要があるようです。なるほど。
namazuの基本的な使い方を覚えた。
mknmzでindexを作り、
namazu 検索語 index(のあるフォルダ)
という風にやれば一覧が出る。emacsでもできたが、
これはcgiを使わないと効果的には使えなさそうだ。
しかしそれはまた今度覚えよう。
im-130からim-140に入れかえてみたが、あいかわらずmewはabortしつづける。 某氏に教えていただきmew-19.54/Makefileを書きかえて、
EMACS = emacs #EMACS = xemacs #ELISPDIR = $(PREFIX)/lib/$(EMACS)/site-lisp ELISPDIR = $(PREFIX)/share/emacs/site-lisp
としからmakeしてもabortが出ることが判明。呪われている。
perlを実行するたびに変なwarning (LANG = "ja_JP.EUC"うんぬんかんぬんというやつ) が出るのでウェブで調べてみたら、 jperlを入れてないのが原因らしい。 そこで思い切ってportsを入れておくことにした(特に思い切る必要はないが)。
あ。FreeBSD-4.0RELEASEもすでに出ているのか(まだ(98)版は出ていない)。 せっかく入れたばかりなのに。
あれ、perlはja-perlをすでに入れていた。てことはなぜなんだろう。謎が深まる。
あ、mew-1.92.4をlynxで取ってきたもう一度makeしたら今度はうまくできた。 あ、ちゃんとemacs上で起動した。奇跡だ。奇跡だ。
mewは一度xemacs用にmakeしてしまうと、emacsでは使えなくなるらしい。 mew-1.92.4/以下をいったん捨てたあと、もう一度tarでファイルを展開し、 それから以下のようにMakefileを書き換えてからmakeするとうまく行った。
EMACS = emacs #EMACS = xemacs #ELISPDIR = $(PREFIX)/lib/$(EMACS)/site-lisp ELISPDIR = $(PREFIX)/share/emacs/site-lisp
pascal上のメイルはtarして全部millに移した。.forwardも設定。 これで今までpascal上でやってきたことのほぼすべてが、 mill上でできることになる(遅いけど)。万歳。
Xでemacsを立ち上げると日本語が全部白い四角(□□: こんなやつ)
になって困っていたのだが、
このサイトをみると.Xdefaultsに
Emacs.Font: fontset-standard
と書けばいいことがわかる。
辞書が見れるように、
をインストール。ndtpの設定は大変だが、 日本語のinfoファイルを見ればなんとかなる。
発音記号が読めるようにと思ってbitmap-mule-8.2を入れてみたが、 font/make installがうまく行かない。とりあえず放棄。
以下、備忘録。自動でできるというウワサも聞いたが、 とりあえず練習と思って手動でやってみた。
ciceroの/var/log/httpd-access.logがとんでもなく大きくなっていたので、 http://www.apache.org/docs/misc/howto.html の記述を参考にして、手動で置きかえておきました。 ついでにhttpd-error.oldも同じようにしておきました。
一応確認のために手順を書いておくと: cd /var/log sudo mv httpd-access.log httpd-access-log.old kill -1 `cat httpd.pid` gzip httpd-access-log.old
usr/ports/wwwにあったcgi-lib-2.18というのをmake installしてみる。
パッケージでwwwstat-2.01をインストール。まだ使い方は知らない。 wwwcount-2.5を入れてみたいのだが、ftpサイトのパッケージにもないし、 portからmakeしようとしてもfetchができない。
> いや、ちょっとcgiの勉強をしてるんです。
/usr/local/etc/apache/httpd.confのOptionの項にExecCGIを追加し、
Options Indexes FollowSymLinks ExecCGI
に変更。さらにAddTypeの項に
AddType application/x-httpd-cgi .cgi
を追加。kill -hup `cat httpd.pid`。
む。手強い。動かない:-) /usr/logにCount.logなんかを作ったりしないといけないようだが、 またにしよう。
自分のディレクトリでcgiスクリプトを書いても動かない。
.htaccessを使うとなんかlynxが立ち上がらなくなる。
そこでふたたびhttpd.confファイルをいじり、
<Directory /> Options FollowSymLinks ExecCGI AllowOverride None </Directory>としておいた。これでcgiは一応動くようになった。
とほほのWWWページ を参考にさせてもらってやったら、 なんとかアクセスカウンターが動くようになった。 いろいろ大変だった。
次は掲示板か?
とほほのページを参考にして、 フォームでメイルを送れるようになった。 メイルアドレスを書くと、そこにCcされるようになっているようだ。
さらに掲示板も作った。 これもとほほのページを参考にさせてもらった。 アクセスカウンタ以降はだいぶ容易にできるようになった。 これでとりあえずcgiの勉強は終わりだな(ちょっとセキュリティが心配だけど)。 そのうちプリンタの勉強をしよう。
なお、cgi関係のファイルはすべて~/kodama/wwwdocs/cgi-bin/以下に置き、 /usr/local/www/cgi-bin/には置いていない。必要であればコピーすること。
namazuをヴァージョンアップしておいた。 (1.3.0.8→1.3.0.11)
ヴァージョンアップって、どういう風にするんだろう? とりあえず古いのをpkg_deleteして、 新しいのを./src/configure→make→make installしておいたが。 これで一応動いている。