2002年1月 UNIXとアップルトーク
インストールメモ代わり cap60とnetatalk-1.5.0をインストールする。 どちらもよく利用されているソフトウェアであるし、たいしたこと無いと思っていたのだが、 不思議なくらいうまくいかない。 (これらはUNIXマシンにアップルトークをしゃべらせてマックとファイルやプリンターを 共有するプログラムです) 今までSunOS4.1.4のマシンにcapを入れていたのだがSolaris8マシンに換えることになり 改めてインストールしたというわけ。 で、ネット検索などでSolarisマシンにcapのインストール例を参考にしながらmakeしていく。 いたって快調でインストールまでうまく行く。 Appletalkデーモンを動かすとdoneといってちゃんと動いている。 getzonesをすると当ネットワークのアップルゾーンリストも正常に出力する。 ところが肝腎のファイル共有aufsを動かすと、、、 AFPServer failed.... とログをはいて全然だめ。 なんで?? 再度Configureをするが、何度やってもaufsは動かない。 今回なにが不思議といって、失敗例が見つからないのが一番不思議だ。 たいていうまく行かないときはネット検索をすると似たような例が見つかるのだが capに限って全然見当たらない。 うまく出来ないのは私だけ? 何か愚かな間違いをしているのでは、と何度も見直しをしてみても途方にくれる。。。 実は最初インストールしたときはちゃんと動いたのだ。 だがあとからtcp_wrapperをインストールして、だめになった(気がする)。 インストールの順序があるのだとして、もう一回makeし直せば大丈夫じゃないか、と 言われてやってみたのだが、だめに変わりがない。 lockが関係しているのだろうか、、、ああ、道はまだ遠い。。 (後日談あり。下に) 一方netatalkも不思議な現象に見舞われる。 こちらはSolaris2.5のマシンにインストールする。 最初netatalk-1.4bをインストールした。エラーもなくすんなりインストールでき capではうまく見えないファイル共有もちゃんとマックから見える。 で、capが動かなくてもまぁいいか、と安心していたら、 netatalkをインストールして以来マシンがものすごく不安定になってしまった。 突然のフリーズにリブート。 これは長年使っていたワークステーションで今までこんな事は一度もなかったから netatalkが怪しいとしか思えない。 100Mの通信に対してはパッチが出ているというので、送ってもらって パッチを当てたあと再度インストールしてみたが、それからも 一日一回は落ちるというひどさ。 やむなくnetatalkを削除すると、それからは一度も落ちる事はなくなった。 でも諦めきれずネット検索をして、今度はnetatalk-1.5.0をインストールしてみた。 新しいバージョンは随分以前と変っていて、いろいろと親切設定になっている。 tcp_wrapperを保証している点も安心だ。 しかし今度はインストールで何度もエラーメッセージがでた。 ちゃんと全部のdocを読まなかった自分が悪いのだが、全部読むのって大変なのよねぇ。 結局 _ISOC9X_SOURCEをdefineしないこと、と、 megatron/hqx.cのL_INCR を SEEK_CUR に換えること。 これをして上手くすすみ、 一応インストールは終了、無事アップルトークゾーンを見ることができ ちゃんとマックから共有されるようになった。 でも安心できない。一週間くらい様子をみてマシンが落ちないことを確かめないと。 ------------------ あれほど悩んだcapだったが、原因がわかってあっさり解決。 そもそもSunOS4.1.4でサーバーを動かしていたわけだが、そのマシンのcapが動いていたのだ。 止めたつもりだったのに・・・バカ。。。 ではなぜすぐにそれに気付かなかったのかというと、そこが落とし穴だったのだ。 capデーモンを /usr/local/cap/aufs -n "hogehoge" と、hogehogeを名乗るように動かしていたのだった。 一般的には -n "`uname -n'" と、名前を特定せずunameコマンドで名前を名乗るようにするのが普通だ。 なぜ、こんな設定にしたんだろう、、8年前なので覚えていないが。。 このhogehogeという名前は新マシンに引き継がれ、旧マシンは違う名前にして 隠居生活に入っていた。新マシンに旧マシンで動かしていた色々なサービスを移した時、 インストールしたcapを当然テストした。そのとき正常に動いたのは、、そう! 旧マシンを止めていたからだったのだ。 新マシンの構築が順調に出来あがり、名前の変更も済んだ時点で旧マシンをまた 動かし始めたわけだ。普通の設定なら旧マシンの名前がマックから見えて、 「あっ!おかしい、旧マシンのcapが動いてる!」と気付くはずだったのだが、 上に書いたとおりhogehogeと名乗るので、新マシンだと思いこみ旧マシンに頭がまわらなかった。 hogehogeを名乗るマシンが他にあるので新マシンのcapは正常に動作しなかったのだ。 それなのに私はずっと新マシンにインストールしたcapがおかしいのだと思いこんでいた。 いつもどおり気付いてみると情けなくなるようなミスだった。とほほほ。