Movable Type 4 のバックアップ機能

Movable Type 4 のバックアップ機能

Posted at August 30,2007 2:35 AM
Tag:[Backup, MovableType]

Movable Type 4 ではブログ全体をバックアップできる「バックアップ機能」が搭載されました。現在校正中の「Webデサインの新しいルール Movable Type(仮称)」でも詳しく解説していますが、設定項目がやや分かりにくいので、本エントリーで少しだけ触れておきます。

1.ブログのバックアップとシステム全体のバックアップ

バックアップは、ブログのバックアップとシステム全体(複数ブログを運営している時に一度でバックアップできる)のバックアップのいずれかを選択することができます。

どちらも、システムメニューの「ツール」→「バックアップ」を選択し、ブログを特定したい時は、「バックアップするブログを選択」でブログを選択します。

システムのバックアップ

が、ブログ単体のバックアップをするのであれば、ブログの管理メニューにある「バックアップ」を利用した方がいいと思っています。こちらであればブログを選択する必要はありません。

ブログのバックアップ

このメニューに辿り着くにはダッシュボード右にある「ショートカット」の「インポート」→「バックアップ」で進んでください。
ベータ版の途中までは、このメニューには一番下の「ツール」から進めたのですが、正式版では意図的に進めなくなっています(ツールで進めるのはログのみ)。復元がシステムメニューからしか行えないので、もしかしたらブログ単体のバックアップメニューはなくなるのかもしれません。

2.圧縮フォーマットと出力ファイルのサイズについて

「圧縮フォーマット」と「出力ファイルのサイズ」の関係がちょっと分かりにくいので、先に解説しますと、「出力ファイルのサイズ」は「圧縮しない」を選択した時のみ有効になります。この設定項目についてはユーザビリティがいずれ改善されるでしょう。

さて、圧縮フォーマットは OS によって異なり、Linux では tar.gz、Windows では zip になるみたいです。

ラジオボタンから「圧縮フォーマット」を選択した場合、つまりバックアップデータを圧縮する場合は、全てのバックアップデータをひとつのアーカイブファイルにしてダウンロード画面に移行します。
復元する時はこのアーカイブファイルを指定するだけで、解凍する必要はありません。

「圧縮しない」を選択した場合は、「出力ファイルのサイズ」にかかわらず、バックアップデータが /tmp に作成され、画面下にバックアップされたファイルの一覧が表示されます(下)ので、それらをローカル PC にダウンロードします。「ファイルのアップロード」機能を利用してアップロードしたアイテム(ここでは jpg/png)等もバックアップされます。

分割しないバックアップ

アイテム類がなければ、ここで生成されるのは、マニフェスト(manifest)ファイルとXMLファイルのみです。バックアップの実体はXMLに含まれ、マニフェストファイルはバックアップファイルのXMLの一覧が記述されているだけです。

XML ファイルがひとつしかないとマニフェストの意義がわかりづらいのですが、上記は、「出力ファイルのサイズ」で「分割しない」を選択した動作で、下が、「出力ファイルのサイズ」で「300KB」を選択したものです(上記と異なるブログなのでアイテムの表示が異なりますが無視してください)。

分割したバックアップ

この例では(画面上は分かりませんが)XML ファイルが 300KB 単位に分割されています。分割対象となるファイルは XML のみで、サイズは 300KB ぴったりではなく大体です。
また XML ファイルが指定したサイズを超える場合のみ分割されます。

ファイルのサイズ

マニフェストファイルには、このXMLファイルの一覧が記述されています(下はマニフェストファイルの中身)。

<manifest xmlns='http://www.sixapart.com/ns/movabletype'>
<file type='backup' name='Movable_Type-2007-08-29-16-55-32-Backup-1.xml' />
<file type='backup' name='Movable_Type-2007-08-29-16-55-32-Backup-2.xml' />
<file type='backup' name='Movable_Type-2007-08-29-16-55-32-Backup-3.xml' />
<file type='asset' name='tea.jpg' asset_id='5' />
</manifest>

このファイルは何に使うのか?という話ですが、「圧縮しない」を選択して作ったバックアップで復元する時には、最初にこのマニフェストファイルを指定します。

指定されたマニフェストファイルには XMLの一覧、つまりバックアップの実体が書かれているので、システムがこの内容を読み取り、復元時に「次はこのXMLファイルをアップロードしてください」というウィザードのように進めることができる、という訳です(下)。

システムのバックアップ

圧縮した場合は、これらの面倒な作業はシステムが勝手に行ってくれます。またどちらも含まれる内容は全く同じものです(アーカイブする・しないの違いだけ)。

3.一時ディレクトリの変更について

「圧縮しない」でバックアップすると、/tmp 配下にバックアップが作成されます。バックアップ機能のメッセージにも書かれていますが、公開すべきではない情報も含まれています。言い換えると、XML ファイルはテキスト形式なので、管理情報が丸見えです(パスワードは暗号化されている模様)。

システムのバックアップ

このメッセージでは「一覧に表示されたファイルを/tmpディレクトリからダウンロードした後、すぐに削除することを忘れないでください。」と書かれていますが、サーバによってはアクセス制限で FTP ツールでは /tmp に移動できない場合があります(ただしこのエリアは周期的に削除されるはず)。

その問題とは別に、バックアップファイル名が全世界でユニークな名称ではないようなので、共有タイプのサーバの場合、衝突する可能性がないとは言い切れません(権限はオーナーだけなのでどのような動作になるか分かりませんが)。

上記を踏まえて、バックアップを分割しない方法で保存する場合は、事前に mt-config.cgi の末尾の行に、一時ディレクトリを自身のディレクトリにする設定(下記)を追加することをお勧めします。

TempDir [一時ディレクトリのパス]

[一時ディレクトリのパス]にはサイトパスの末尾に /tmp を加えた内容を記述すると良いでしょう。/temp とかでは、ルートのディレクトリにアクセスしようとするため、エラーになります。

また、mt-config.cgi の設定だけではディレクトリは自動生成されません。FTP ツールで tmp ディレクトリを追加しましょう。

tmp ディレクトリは Movable Type 4 のフォルダ機能を使って作成していいかもしれませんが、ディレクトリの性質が異なる(tmpはバックアップすべきエリアではない)ので、その辺りはご自身で見極めてください。

4.その他

バックアップ機能は大変良いと思っているのですが、このエントリーはバックアップ機能を保証するものではありません。

バックアップ機能のご利用に際してはご自身の責任で行ってください(可能であれば他のバックアップ方法と併用することを推奨します)。

関連記事
zenback
人気エントリー
トラックバックURL


トラックバック

Movable Type 4 でバックアップファイルを圧縮しない場合の留意点 from yusuke-watana.be
Movable Type 4のバックアップ画面で、圧縮フォーマットを「圧縮しない」にしてバックアップを作成すると、バックアップされたファイルの一覧と完了メ... [続きを読む]

Tracked on April 21, 2008 8:13 AM

Movable Type4のバックアップ機能 from モカモカ工房
初めてMovable Type4のバックアップ機能というのを使ってみました。... [続きを読む]

Tracked on July 31, 2008 3:54 PM
コメント

お世話になります。
貴サイトをいつも参考にさせていただいております。

ver4.21を使っているのですが、「圧縮する・しない」「分割する・しない」に関わらず、バックアップができません。途中で作業が止まってしまいます。このような場合、どのような問題が考えられるのでしょうか。

サーバーの容量が少なくなっているせいか、数か月前からダッシュボードのテンプレートモジュールが開けなくなったり、ブログ記事の保存がまともにできなくなったりしていたのですが、それらの問題でしょうか。

もしお分かりになりましたら、お教えください!

[1] Posted by たらひ : November 11, 2009 12:41 AM

>たらひさん
こんにちは。
ご質問の件ですが、mt-config.cgi をダウンロードして任意のエディタで開き、最後の行の次に以下の1行を追加して元のディレクトリにアップロードしてバックアップを再実行してみてください。

TempDir /home/melody/cgi-bin/mt/tmp/

この設定は、一時ファイルの保存先を変更するための環境変数です。バックアップを実行すると、バックアップファイルを一時ディレクトリ(デフォルトでは/tmp)に配置するため、(うまくいくかどうかわかりませんが)その配置先を変更します。

「/home/melody/cgi-bin/mt/tmp/」の部分は、ご自身のディレクトリに「tmp」等を作って、そこを指すようにしてください。
それではよろしくお願い致します。

[2] Posted by yujiro logo : November 16, 2009 12:38 PM

yujiro 様

先日はご返答ありがとうございました。
おかげさまで解決できました。
お礼を申し上げるのが遅れまして申し訳ございません。
今後ともよろしくお願いいたします。

[3] Posted by たらひ : November 30, 2009 8:16 PM

>たらひさん
こんばんは。
ご連絡ありがとうございました。
無事に解決したようで良かったです。
ではでは!

[4] Posted by yujiro logo : December 1, 2009 12:51 AM
コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)