昨日から今日にかけて、おおごとだった。昨夜は寝なかった。
サーバーに、Math::BigInt::Scalar という Perl モジュールを CPAN シェルからインストールしていたのだが、上の空だった。これが間違いの始まり。やたらと質問が多い。まあデフォルトで問題ないだろうと Enter キーを連打。インストール完了。時間がかかった。
その後、何となく Perl スクリプトの挙動が変。どうしても気になるので、perl -v で Perl のバージョンを確認。ギョ!バージョンが 5.8.2 になっている(5.8.8 の筈)。一体どうなっているんだ。FTPでログインし、ディレクトリを確認。事もあろうに /usr/bin に有る筈(ラピッドサイトの場合)の Perl が、/usr/local/bin にインストールされている。しかもバージョン 5.8.2。
問題の Math::BigInt::Scalar モジュールは、Perl-5.8.2 をインストールしていたのだった。どおりで質問が多く時間がかかる筈。ちなみに CPAN で Math::BigInt::Scalar を検索すると、Perl-5.8.1 がヒットする。これはもう意味不明。ええい、こうなればやけだ。Perl を最新バージョンにしてやろうと、Perl-5.10.0 をダウンロードし、prefix を /usr に指定して(ラピッドサイトの正規パス、Perl デフォルトは /usr/local)インストールし、/usr/local/bin の perl をリネームし、/usr/bin/perl へのシンボリック・リンクを作成。おもむろに perl -v、バージョンが 5.10.0 になってる。ひと安心したのだが、これが甘かった。Movable Type の mt-check.cgi を実行すると、ほとんどのモジュールが消えている。しかも表示が英語。これは重傷だ。
とにかく無我夢中で片っ端からモジュールをインストールし、Movable Type が動き出した。他の Perl スクリプトも正常に動いている。mt-check.cgi の出力も正常。Perl が最新になり、ケガの功名かと思ったのだが、まだまだ甘かった。mt-check.cgi では正しく認識されている Image::Magick が正常に動かないのである。具体的には匿名コメントの画像認証が出ない。Image::Magick を何度インストールしても駄目。何をやっても駄目。こうなったらお手上げ。片っ端からバックアップしてサーバー初期化しか無い。ラピッドサイトにサーバー初期化の申し込みを出す。
サーバーが空になった。さて、バックアップからの復旧に今日一日費やした。今やっと終わり、何とか元に戻った。疲れた。
これだからルートを取れるサーバーは怖い。もうアブナイ事をするのは止めよう。本当に懲りた。皆さんも、CPAN シェルは便利だけど、注意して、集中して使いましょう。
今日はゆっくり寝よう。


コメントする