Movable Type AMI版を Amazon Linux 2 から Amazon Linux 2023 に移行する
Movable Type AMI版を Amazon Linux 2 (AL2) から Amazon Linux 2023 (AL2023) に移行するためのガイドです。
AL2 対応版と AL2023 対応版の違いについては、「Movable Type AMI版 Movable Type 7 r.5402 (7.9.7-2) Amazon Linux 2023 対応 リリースノート」を参照してください。
注意事項
本ガイドは、Movable Type AMI版の初期設定を前提としています。パスやユーザー名など、初期設定から変更を加えている場合は、実際の環境に合わせて適宜読み替えてください。
移行対象
移行対象は、データベースおよび /data 配下と /app/movabletype 配下のユーザーコンテンツ領域にある計6つのディレクトリです。プラグイン(プログラム・静的ファイル)やテーマについては、ユーザーが独自に追加したファイルのみバックアップします。
また、必要に応じてユーザー CGI スクリプト(/data/file/cgi-bin)やログファイル(/data/logs/movabletype 配下および /var/log 配下)もバックアップしてください。その他にも独自にカスタマイズを加えている場合は、適宜バックアップを行い、移行先へ反映してください。
- 公開ディレクトリ
- /data/file/static
- プラグインディレクトリ(プログラム)
- /app/movabletype/plugins
- プラグインディレクトリ(静的ファイル)
- /app/movabletype/mt-static/plugins
- サポートディレクトリ
- /app/movabletype/mt-static/support
- テーマディレクトリ
- /app/movabletype/themes
- 代替テンプレートディレクトリ
- /app/movabletype/alt-tmpl
代替テンプレートを使用する場合、移行元と移行先で Movable Type のメジャーバージョンが異なると、管理画面の構成の違いにより正常に動作しなくなる可能性がありますので、ご注意ください。
移行先のインスタンスを起動する
AL2023 に対応している Movable Type AMI版の EC2 インスタンスを起動します。
インスタンスの起動方法は、「Movable Type AMI版の起動方法」を参照してください。
バックアップする
データベース
データベースをダンプし、gzip 形式で圧縮します。
$ cd ~
$ mysqldump -u sixapart -p movabletype | gzip > dump.gz
標準のデータベース名は movabletype、ユーザー名は sixapart です。パスワードは、設定ファイル /data/conf/mt-config.cgi 内の環境変数 DBPassword の値を確認してください。
ディレクトリ(コンテンツ・プラグイン等)
各バックアップ対象ディレクトリを gzip 形式でアーカイブ・圧縮します。
公開ディレクトリ(/data/file/static)のバックアップ例です。他の移行対象ディレクトリについても、同様の手順でアーカイブを作成してください。
$ cd /data/file
$ tar -czf ~/static.tar.gz static
バックアップファイルを移行先に転送する
バックアップファイルを移行先のインスタンスに任意の方法で転送します。
scp コマンドを使用して移行先インスタンスにバックアップファイルを転送する例です。
$ scp -i /path/to/key-pair-name.pem ~/static.tar.gz ec2-user@instance-ip-address:~/
リストアする
データベース
バックアップファイルからデータベースをリストアします。
$ cd ~
$ zcat dump.gz | mysql -u sixapart -p movabletype
ディレクトリ(コンテンツ・プラグイン等)
バックアップファイルから、移行先の対応するディレクトリにデータをリストアします。
AL2023 では、プラグインやテーマなどの配置先パスが /data/file 配下に変更されています。AL2 と AL2023 のディレクトリパスの対応関係は次の表のとおりです。
| ディレクトリの詳細 | AL2 のディレクトリパス | AL2023 のディレクトリパス |
|---|---|---|
| 公開ディレクトリ | /data/file/static | /data/file/static |
| プラグインディレクトリ(プログラム) | /app/movabletype/plugins | /data/file/plugins |
| プラグインディレクトリ(静的ファイル) | /app/movabletype/mt-static/plugins | /data/file/mt-static/plugins |
| サポートディレクトリ | /app/movabletype/mt-static/support | /data/file/support |
| テーマディレクトリ | /app/movabletype/themes | /data/file/themes |
| 代替テンプレートディレクトリ | /app/movabletype/alt-tmpl | /data/file/alt-tmpl |
- バックアップファイルから復元先のディレクトリにファイルを展開します。
- ディレクトリおよびファイルの所有ユーザー/グループが
www:wwwであることを確認します。異なる場合は、chownコマンドで変更します。
$ cd /data/file
$ sudo tar -xzf ~/static.tar.gz
$ sudo chown -R www:www /data/file/static # 必要に応じて実施
Web サーバーの設定ファイルを編集/再起動する
移行元で Web サーバーの設定ファイルに独自の変更を加えている場合は、移行先の /data/conf 配下にある設定ファイルなどに反映してください。
AL2023 対応版では、Apache httpd が設定された状態で起動するため、移行先で使用する Web サーバーに合わせて、次の対応を実施します。
nginx を使用する場合
/app/tools/switch-webserver コマンドで Web サーバーを nginx に切り替えます。
$ sudo /app/tools/switch-webserver nginx
Apache httpd を使用する場合
サービスを再起動し、設定ファイルの変更内容を反映します。
$ sudo systemctl restart httpd.service
Movable Type の設定ファイルを編集/再起動する
移行元で Movable Type の設定ファイル(mt-config.cgi)に独自の変更を加えている場合は、復元先の /data/conf/mt-config.cgi を書き替えてください。
その後、Movable Type サービスを再起動して、リストアしたデータベースや設定ファイルの変更内容を反映します。
$ sudo systemctl restart movabletype.service
Movable Type のデータベースをアップグレードする
移行元と移行先で Movable Type のバージョンが異なる場合には、システム管理者権限のあるユーザーで復元先の管理画面にサインインすると、Movable Type のデータベースのアップグレードウィザードが表示されることがあります。画面の指示に従ってアップグレードを実施してください。
