別にどうしてもって訳では無いのだが、IRCdをインストールしたくなった。ある程度の設定が出来てしまって、余力が出来ると、ちょっと変わった事がやりたくなるのが人情なのだ。勿論,グローバルに運用しようなんて気はさらさら無いので、あくまでも、ローカルのテスト用なのだ。実際に運用しようとすれば、マシンパワーからしてちょっと足りない様な気がする…と言いつつも、会社のイントラネットでIRCdをたてたら、自分の席に居ても会議出来ちゃうし、そのまま議事録作れるから、ちょっと便利かも…とは思っているが…とりあえずは、自宅と実験室で試験運用である。
- IRCdの選択ではまりまくる
おいらの場合、Portsを探して目的のソースを探すより、まずはパッケージに逃げてしまう。Portsでインストールすると、非力なマシンではコンパイルに時間が掛かるし、バイナリのインストールはすんなり行くものの、大概,設定は自分でやらなければならないのである。パッケージをインストールすると、基本設定やら、起動時の設定は、自動でやってくれちゃったりするから簡単なのである。という訳で、FreeBSD4.5のパッケージを漁ってみたら、ircd-hybridとか、sircd等が見つかった。Webで検索を掛けたのだが、どちらも情報は乏しかったので、とりあえずは、ircd-hybridを選択してみたが、設定が間違って居るとみえて、上手く起動出来ない…というか、起動はしてるみたいだが、ircd.pidというファイルが無いという警告が出てしまい、アクセスも受け付けてくれない。色々と調べている内に、ftp.kyoto.wide..辺りに最新版のircd-jp6(IRCd)のPortsがあるらしいという情報があったので、早速アクセスしてみたが、繋がりません…何故だ??因みにftp.tokyoも試してみたが、駄目だった??まあ、そんなこんなで、色々とインストールしてみては、使えず,を繰り返している内に、ircdインストールは、暗礁に乗り上げていた。ふと、自分のhomeを眺めて居ると、何故か(何処かは忘れたが、手元に有るので何処かで拾ったらしい)、irc2.9.4.tgzというファイルがある…。ircという名前だからクライアントかな?と思ったが、解凍してみると、サーバ(ircd)の方も、ちゃんと入っていた。お!
irc2.9.4.tgz
- しきり直し
色々あったが、ircd2.9.4のPortsが手に入ったので、早速試してみる事にした。実は、ircd2.9.4については、インストールした事があるという人が、Webで情報を公開しているページを幾つか知っていたので、何となく、イケそうな気がしてきたのだ。
ルート権限で、まずは、
% tar xvfz irc2.9.4.tgz
で解凍し、irc2.9.4/のディレクトリにてお決まりの
% ./configure
を実施,i386-unknown-freebsd4.5 support/というディレクトリで、config.hとMakefileを書き換えて使え!と言われるが、config.hをどうこうするっていうのは分からないので、こっちはほったらかしで、Makefileの方を読んでみる。とりあえずは、そのまま使えそうな雰囲気だ。どうやら、make serverでサーバの生成,make install-serverで、サーバのみインストール出来そうである。おいら的には、サーバの方だけmake,インストール出来れば良いので、
% make server
% make install-server
と実施,因みに、Pentium 166MHz,MEM:64MBのマシンで生成は2分位で終わった。
- コンフィグ
実は、ircd-hybrid等、色々と試していたので、コンフィグファイルの在処が、転々としていた。という事もあって、今回のインストールでも、ちょっと間違えてしまっていたのだ。どうしても、思い通りに動作しないなと思っていたら、設定するコンフィグファイルを間違えていたという訳だ。このircd2.9.4の場合、コンフィグは、/usr/local/lib/ircd/ircd.confになる。幾つか、入れると、/usr/local/etc/ircd/ircd.confってのが有ったりするので、こんな所でハマって無駄な時間を浪費しない様に気をつけよう。さて、こいつの内容は、ircdを使う環境に合わせなければならないのであるが、おいらの様に、スタンドアローンで、イントラネット内でのみサービスしたいという場合であれば、
M:(サーバ名):(サーバのIPアドレス):(所在地):6667
A:(管理人の名前と場所):(管理人のメールアドレス):(コメント)::
P::::6667:
Y:1:90:0:20:100000
I:*::*::1
の()の部分のみ設定すれば良い。,P:,Y:,I:の行については、呪文の様に、この通りで良い。尚、サーバのIPと、サーバ名は、インストールしたサーバマシンに準拠すべきだが、その他の項目については、割と適当で良いと思う。ついでに、/usr/local/lib/ircd/ircd.motd(接続時のメッセージ,何でも良い)も、設定しておくと、接続出来たか否かの判断が簡単に出来る。
- 起動シェル
パッケージで入れる場合だと、サンプルがインストールされていたりするのだけど、Portsだと、自分で書くのだ。この辺が面倒だな。まぁ、文句は言ってられない,/usr/local/etc/rc.d/ircd.shという起動シェルを自分で作る。中身は、こんな感じで良い。
#!/bin/sh
if [ -x /usr/local/sbin/ircd ]; then
echo ' IRCd '
/usr/local/sbin/ircd -c
fi
以上、設定が終わったら、再起動を掛けてみる。起動時に、IRCdというメッセージ(Daemonで起動しているので、Cannaやapacheと同じ列に表示される筈)が表示されて、エラーやワーニングが出てなければ起動出来ている筈である。LANで接続されている他のPC(Windows)から、IRCクライアントで、直IPアド差しで接続してみる,接続しましたとなればOK
因みに、Windows側で使用したIRCクライアント