Movable Type 備忘録

 シンボリックリンクでMovableType3.32アップグレード

先日リリースされたMovableType(ムーバブルタイプ) 3.32 日本語版ですが、みなさんリリースされて直ぐにアップグレードされてるようでした。

ネットをいろいろ徘徊してみて、特に問題もなさそうなかんじです。
でも、ダイナミック・パブリッシングにはちょと不具合があるようなことをどこかのサイトで紹介してました。

わたしのサイトではダイナミック・パブリッシングは無関係なので、わたしも先ほどアップグレードしてみました。

今回のアップグレード含めて2回目になりますが、ここでわたしのアップグレード法をご紹介したいと思います。

Movable Type シンボリックリンク

わたしのMovableType(ムーバブルタイプ)のディレクトリ構成は右の図のようになっています。

カンタンに説明すると、http://bizcaz.com/mt/ というディレクトリは実際には存在せず、リンクファイルになっています。
mtリンクファイルのリンク先は、今まではMT-3.31-jaディレクトリになっていました。
今回MovableType(ムーバブルタイプ) 3.32をインストールしたので、今のリンク先はMT-3.32-jaを指しています。

このリンクのことをシンボリックリンクというんだそうです。
ウィンドウズで言うとショートカットみたいなものかな。 このシンボリックリンクはUNIX系OS( Linux、FreeBSD etc... )で使えます。

どんなメリットがあるかというと、MovableType(ムーバブルタイプ) 3.31はそのまま手をつけず、MovableType(ムーバブルタイプ) 3.32をインストールすることができます。

要するに、MovableType(ムーバブルタイプ) 3.31の環境をそのままバックアップとして保持しておけます。
何か問題があったら、シンボリックリンク先を元の3.31のディレクトリに張りなおせばすぐに復旧できちゃうわけです。

それでいてMovableType(ムーバブルタイプ)のパスは、http://bizcaz.com/mt/として使用できるので、とっても便利です(●´∀`●)

以下にこのシンボリックリンクを使ったMovableType(ムーバブルタイプ)のインストール手順を記します。

  1. まず、ダウンロードしたMovableType(ムーバブルタイプ) 3.32を適当なフォルダに展開します。
    展開するとMT-3.32-jaというフォルダがありますが、このフォルダを丸ごとサーバにアップロードすることになります。

  2. 次に、プラグインや必要なファイルなどを展開したフォルダにコピーします。

  3. mt-config.cgi-originalmt-config.cgiにファイル名を変更します。
    今回のアップグレードでは中味はいっしょなので、MovableType(ムーバブルタイプ) 3.31で使ってたものをそのままコピペしても問題ありません。

  4. SQLiteやBerkeleyDBを使ってる人は、MT-3.32-jaフォルダの中にMovableType(ムーバブルタイプ) 3.31のデータベース( dbディレクトリ )をダウンロードします。
    MySQLを使用している人は、データベースはサーバ上にあるので何も気にする必要はありません。

  5. 一通り準備ができたら、MT-3.32-jaフォルダごとサーバにアップロードします。
    アップロード先は、MovableType(ムーバブルタイプ) 3.31をアップロードした場所と同じところにアップロードします。

    そうすると、先ほどの図のようなかんじになります。

  6. 最後に、シンボリックリンクでリンク先を新しいMT-3.32-jaに張り替えます。
    さくらインターネットのスタンダードプラン以上をご利用の人は、TELNETでサーバに接続して、以下のコマンドを実行すればシンボリックリンクが作成できます。

    1. ln -s MT-3.32-ja mt

    その際、MovableType(ムーバブルタイプ) 3.31の環境にmtというディレクトリ名を使用している場合には、上記コマンドを実行する前に以下のコマンドを実行してディレクトリ名を変更しておきます。

    1. mv mt MT-3.31-ja
  7. ロリポップをご利用の人は以下のスクリプトをサーバにアップロードして、パーミッションを755に変更します。
    そして、ブラウザからそのスクリプトを実行することでシンボリックリンクが作成できます。

    - 2007.01.29 追記 -

    実行ファイルのパーミッションの件ですが、777だとセキュリティ上実行できないことがあります。 ですので、755に変更して再実行してみてください。
    ロリポップ!レンタルサーバー / CGI・SSI・PHP・SENDMAILについて
    さくらインターネット /  オンラインマニュアル

    1. #!/usr/bin/perl -w
    2.  
    3. # MT3.31のディレクトリ名(mt)をリネームする場合は
    4. # 以下のコメントを有効にします。
    5. #system("mv mt MT-3.31-ja");
    6.  
    7. # シンボリックリンクを作成します。
    8. system("ln -s MT-3.32-ja mt");
    9.  
    10. print "Content-type: text/html\n\n";
    11.  
    12. 1;

以上で、MovableType(ムーバブルタイプ) 3.32のインストールは完了です。
後はブラウザから今まで通りにMovableType(ムーバブルタイプ)にログインしてみてください。

しばらく( わたしは1ヶ月 )様子を見て問題なさそうなら、MT-3.31-jaのディレクトリごと削除しちゃいます。

また、アップグレード後トラブルに見舞われて、元に戻したい場合には、作成したシンボリックリンク( mt )を削除してから、リンク先をMT-3.31-jaに貼りなおせばすぐに復旧できます。

長々と説明しましたが、ぶっちゃけていうと、3.31のディレクトリ名をリネームして、新たに3.32をインストールするのと同じことですね。

この方法がすべての人に受け入れられなくてもいいんです。
どうせわたしはマイノリティですから (; ̄∇ ̄A

では、SEE YOU♪

 Trackback Pings(0)

No trackbacks found.

 Comments(5)

#1: Posted by oscar @ September 2, 2006 [REPLY]
user-pic

こんにちは、bzbellさん。
えと、WindowsNT系列のOS(2000,XP,2003)でもシンボリックリンク使えますよ。
結構深い階層にあるフォルダに、よく設定します。
UNIXだと、バージョン違いをインストールしておいて、シンボリックリンクで切り替えってよくやりますよね。

ロリポ用のcgiって、サイトのルートで動くんですか?
確かlnは、シンボリックリンク作成するカレントで、実行しないといけなかったと思いましたけど。そこら辺情報持ってないので問題ないのかもしれないですが。

#2: Posted by bzbell @ September 2, 2006 [REPLY]
user-pic

>>1 oscar さん

こんにちわ^^

> えと、WindowsNT系列のOS(2000,XP,2003)でもシンボリックリンク使えますよ。

えっΣ( ̄Д ̄;)!?
そうなんですか!!知りませんでした!

> ロリポ用のcgiって、サイトのルートで動くんですか?

はい。とりあえず動作確認済みです。
つか、わたしの別のブログで使用してます♪

#3: Posted by Author Profile Page techno @ September 3, 2006 [REPLY]
user-pic

こういう方法があったのですね!
3.31で、SQLiteを使っていて酷い目に遭ったので、こうしておけば安全ですね。

> えと、WindowsNT系列のOS(2000,XP,2003)でもシンボリックリンク使えますよ。
僕も、WindowsServerを使用していて、IIS6.0を使っているのですが、名前は違いますが、仮想ディレクトリというものがあります。
http://www.sixapart.jp/movabletype/manual/3.3/02_system_admin_guide/installation/windows.html
オフィシャルのインストール方法でも使用されています。
仮想ディレクトリの、フォルダ名を変えることで同じ方法ができそうなのでやってみます。
とても、参考になりました。

#4: Posted by bzbell @ September 3, 2006 [REPLY]
user-pic

>>3 techno さん

はじめまして^^

上記URLのページ…読んでもほとんど理解できませんでした( ̄∇ ̄;)たはは
知らない単語がばっかり…。
つか、自宅サーバお持ちの人は普通に理解できるんでしょうね。

なんせ、わたしはWindowsをサーバとして使えることさえ、最近まで知りませんでしたから(つω-`。)

機会があれば、わたしも自宅サーバを持ってみたい…けど、わたしには無理だろうな。
メンテナンスできませんから(>∀< )

#5: Posted by oscar @ September 3, 2006 [REPLY]
user-pic

仮想ディレクトリは、IISやApache上でフォワードする仕組み。
シンボリックリンクは、OS上でフォワードする仕組みですね。
やってる事は似たような事ですが、実現している部分が違います。
今回の用途だと、仮想ディレクトリでもいけますね。ただし、ロリポがApacheの設定いじれるようになっているならですが。

 Post a Comment

 

コメント用フィード