サーバー修理&アップデート中 画面上にウィンドウの軌跡が残る
11 月 13
Share on Facebook
はてなブックマーク - FreeBSD8.2R amd64 IPv6対応qmail
このエントリーをはてなブックマークに追加

事情があって、64bit OSの環境がほしくなった。サーバーアップデートすることにした。
現状との違いは
OS: FreeBSD6.4R i386 → FreeBSD8.2R amd64 ともにIPv6 とIPv4のデュアルスタック
WEB apache2.0→apache2.2 ともにIPv6 & ssl対応(自作Facebookアプリに必要)
LANG  PHP 5.2.12→ 、perl, v5.8.9→ 、ruby 1.8.7→ 、
DB   mysql4.1→
MAIL qmail1.03(IPv6パッチ)→qmail1.03(IPv6パッチ)

さすがに、OSのメジャーバージョンが2も違ってさらに i386からamd64が違うとそこらじゅうで戸惑うことばかり。もっとも困った時は、ググれば先人達の知恵が一杯見えるのでほとんどは問題なし。
 但し、一つだけ困ったのがqmailを amd64 IPv6 で動かすこと。IPv6をあきらめれば問題なく動かせたが、メールだけをIPv6未対応にはしたくない。IPv6パッチを当てるとコンパイルが通らないのである。 結論から言うと結果的に分かってしまえば簡単な修正で何とかなったが、PHPしか知らない私には戸惑うことばかりだった。
今回だけは困った時はググるという習慣が裏目に出た。良く考えてみれば上級者にとっては当然のことはわざわざ説明しないので素人にとって難しい部分を必ずしも書かないし、初級者は自分なりのもっともらしい理由を付けて出来ないことを正当化してしまう。今回は後者の説明を信じてハマった。

追加で修正しなければならなかった点を記憶に残っている分だけメモって置く(v6パッチと他のパッチ適用時)
・amd64環境での、include内容の微妙な違いからくる二重定義の解消
・当然ながらipv6パッチは他のパッチを当てることを前提にしていないので、随所にパッチ漏れが発生。v6パッチでいじくっている変数を他のパッチが使っているかどうかを見るだけだがこれは少々根気が要る。

(コメント オフ)