MTクラウドでは通常のバックアップをリストアできない


Movable typeには標準でバックアップとリストアの機能がありますが、実はMTクラウドでは使えません。当てにしていると結構痛いです。

まず、バックアップは普通にできます。メニューの「ツール→バックアップ」から「バックアップを作成」ボタンを押すと、多少時間がかかりますが、バックアップのアーカイブがダウンロードできます。

復元はシステムの「ツール→復元」から行います。

バックアップファイルに先ほど取得したバックアップファイルを指定して「復元」ボタンを押すと……

アアーッ!!

アップロードするファイルのサイズが大きすぎたようです。この403応答は一見nginxが出しているように見えて詰んだ感じがしますが、実はMovable Typeが出しています。Movable TypeにはCGIMaxUpload1という最大アップロードサイズを指定する環境変数があり、これによって制限されています。ちなみに初期設定値は20480000です。

MTクラウドにはMT環境変数を変更できる機能があり、システムの「クラウドサービス→MT環境変数にあります。ということで設定してみましょう。

終わった……

ということでMTクラウドではバックアップはできてもリストアができないのでした。
CGIMaxUploadを変更することができないのは、むやみに大きな値にするとDoS攻撃に弱くなるからでしょう。

実はMTクラウド用のバックアップ・リストア機能があります

通常のリストア機能が使えないからなのか、MTクラウドには専用のバックアップ・リストア機能が用意されています。

バックアップと環境のリストアについて

Movable Type クラウド版では1日に1度、バックアップデータを自動的に保存しています。

バックアップデータは FTPS を使用してサーバー上の「backup」ディレクトリから取得することが可能です。 世代ごとにバックアップデータを保持されたい場合は、手動でのダウンロードを行ってください。任意に選択したバックアップデータをご自身のパソコンなどのハードディスクの保管しておくことで、そのバックアップデータを Movable Type クラウド版にリストアすることが可能です。
※取得したバックアップデータをソフトウェア版の Movable Type にリストアすることはできません。

バックアップは自動なので、サーバ移行などを行うのであれば、その時刻に合わせて作業する必要があります。

リストアはシステムの「クラウドサービス→環境のリストア」から行うことができます。

通常のバックアップの復元機能では新たにブログが作られて記事が追加されるためIDが変わってしまいますが、この復元を行うと本当に完全にバックアップされた時の状態に戻ります。なので利用開始時のバックアップを取っておけば何回でも初期状態に戻すことができます。ためしに作ってみたけど最初からやり直したいという時に役立ちます。

ちなみに.trials.jpで取得したバックアップを.movabletype.bizに復元したら管理画面のSSL証明書すらバックアップの状態に戻ってしまいました。まさか、バックアップに証明書と秘密鍵が含まれている?

気になるのでバックアップのアーカイブの中身を見てみましょう。

  • mt-static
  • plugins
  • search_templates
  • static
  • themes
  • alt-tmpl
  • backup
  • data
    • conf
      • SSLCERT
  • error
  • import

SSLCERTファイルの中身が怪しいですね。

SSLCEAR
trials.jp

なるほど。
どこかに証明書ファイル一式があって、バックアップ内の記述を元に使い分けるという感じになっているようです。