先日、ちょっとした、カルチャーショックを体験しました。Solaris10では、/etc/inetd.confは使わないようです。/etc/inetd.confというファイルはあるのですが、使われていないそうです。
ちなみに、「inetd」は、internet super-serverという意味だそうです。dは、daemon(デーモン)だから、まあ、サーバーですね。
インターネット・スーパー・サーバーカタカナで表記すると、なんとも、しょぼい名前ですね・・・どうでもいいか。
閑話休題。
SPARCでSolaris10なワークステーションに、pkgsrcを使って、imap-uwをインストールしたときのことでした。いつもどおり、/etc/inetd.confへ
imap stream tcp nowait root /usr/pkg/libexec/imapd imapd
imaps stream tcp nowait root /usr/pkg/libexec/imapd imapd
pop2 stream tcp nowait root /usr/pkg/libexec/ipop2d ipop2d
pop3 stream tcp nowait root /usr/pkg/libexec/ipop3d ipop3d
pop3s stream tcp nowait root /usr/pkg/libexec/ipop3d ipop3d
というような記述を付け加えようとして、inetd.confが使われていないということに気が付きました。
ちょこちょこっとマニュアルを斜め読みして、やり方が判明しました。
上記のinetd.confに書き加えたい内容を、とりあえず、/tmp/inetd.confというファイルにでも書いておき、以下のようにinetconvというコマンドを実行。
# inetconv -i /tmp/inetd.conf
imap -> /var/svc/manifest/network/imap-tcp.xml
Importing imap-tcp.xml ...Done
imaps -> /var/svc/manifest/network/imaps-tcp.xml
Importing imaps-tcp.xml ...Done
なにやら、ファイルを変換して作って、登録してくれるようです。こんな風に確認。
# svcs -a | grep imap
online 17:21:50 svc:/network/imap/tcp:default
online 17:21:52 svc:/network/imaps/tcp:default
なるほどね。
/etc/inetd.confがない・・・これも、時代の変化ですかねぇ。
詳しくは
smf(5)
inetadm(1M)
inetconv(1M)
のマニュアルを参照してもらえばわかると思います。
☆ ☆ ☆ ☆ ☆ ☆
pkgsrcというのは、FreeBSDのportsを、NetBSD用に作り変えたものらしいのですが、今では、NetBSDだけでなくて、Mac OSとか、Solarisとか、さまざまなプラットフォームでpkgsrcがつかえるようになっています。
portsならそこそこ使いこなせていると思うので、portsと同じようなつもりでpkgsrcを使っていると・・・おおはまりしました。いや、SPARCなSolaris10で使っているからかなぁ?NetBSD/i386だと問題ないのかも???
今日おきた、pkgsrcにまつわる、イヤーンな出来事。
ふと気が付くと、共有ライブラリのlinintl.soか何かがアップデートされてしまっていて、gccが動かなくなっていました。
gcc、gettext-lib、libiconv、libtool-base、gmakeなどなど、多くのものが複雑に依存しあっているため、どういう風に、アップデートをしてやればいいのか、なんだかわけわかんないんです。FreeBSDだと、portupgradeで、よきにはからって、ほぼ全自動でアップデートができるのに・・・
とりあえず、半日かけて、なんとかまともに動くところまでもっていきました。
「lintpkgsrc -i」というコマンドで、FreeBSDのportsでいうところの「portversion -v」みたいに、バージョンアップ可能なパッケージ一覧が表示されます。
そのなかの、pkg_install-infoというのをbmake updateでアップデートしようとしたら・・・
さっきまで、一所懸命時間をかけてアップデートした、gcc-2.95.4とかgcc3とかそのたもろもろ、全部アンインストールされてしまいました。
はぁ?
半日かけてやったことが、すべて泡のように消えてしまいました・・・
pkg_install-infoをbmake updateしようとすると、pkg_install-infoに依存するものが、ごっそり削除されるようで、その依存するものってのが、Cコンパイラなど開発ツールほぼすべて・・・
0 件のコメント:
コメントを投稿