Skip to content
This repository has been archived by the owner on Jun 29, 2020. It is now read-only.

公開されたkawazを修正する

lambdalisue edited this page Sep 20, 2011 · 2 revisions

公開されたKawazを修正する

Warning

ここではすでに公開されたKawazを修正する方法を記載しています。新たにKawazサーバーを立ち上げるには Django serverの構築 および Django serverを用いてKawazを公開する を参照してください

メンテナンスモードへの移行

Kawazにはメンテナンスを行うためのメンテナンスモードというものが存在する。これはメンテナンス中にKawazのデータベースに変更が 加えられデータが紛失してしまうなどのリスクを避けるために用意されたもので公開中のKawazを修正する場合はこのメンテナンスモードへと 移行することを強くおすすめする。

まずはじめに修正内容を表示するために /var/www/Kawaz.info/index.html ファイルを修正してメンテナンス中にKawazに訪れた ユーザーに対して現在のメンテナンスが何を行っているのか、どの程度のリスクがあるのか、いつ頃終わる予定かを教える。

ファイルの修正が終わったら実際にメンテナンスモードへ移行するには以下のコマンドを実行する:

$ sudo a2ensite info.kawaz.org
$ sudo a2ensite dev.kawaz.org
$ sudo a2dissite www.kawaz.org
$ sudo service apache2 reload

これでKawazを訪れた人はメンテナンスが行われていることが一発でわかるようになる。

データのバックアップ

修正内容にもよるがデータが紛失されてしまってからでは遅いので念の為にデータベースおよびアップロードされたファイルのバックアップを 行う。これは以下コマンドにて実行できる:

$ cd ~
$ sudo mysqldump -u root -p Kawaz_db > dump.sql
$ ( cd /var/www/Kawaz; sudo tar zcvf ~/dump.tar.gz statics/storage )

これにより使用しているユーザーのホームディレクトリに dump.sql および dump.tar.gz ファイルが 出来上がる。これらのファイルはメンテナンス終了後に破棄して構わない。

バックアップからの復元方法

仮にデータを紛失してしまった場合は以下コマンドにてバックアップファイルからの復元を行うことができる:

$ cd ~
$ mysql -u root -p Kawaz_db < dump.sql
$ tar zxvf dump.tar.gz -C /var/www/Kawaz

デバッグ用サイトの更新

公開用サイトの更新を行う前にデバッグ用サイトの更新を行い更新がうまくいくかチェックする。デバッグ用サイトは /var/www/Kawaz.dev にインストールされているためここで作業を行う:

$ cd /var/www/Kawaz.dev
$ sudo git pull
$ sudo ./utils/setup/chmod_permissions.sh

なおデバッグ用サイトは http://dev.kawaz.org/ で確認できる。ここでエラーなどが発生しないかを目視にて確認する。

公開用サイトの更新

デバッグ用サイトの更新にて問題が起こらないことを確認後に公開用サイトの更新に移る。公開用サイトは /var/www/Kawaz にインストールされているためここで作業を行う:

$ cd /var/www/Kawaz
$ sudo git pull
$ sudo ./utils/setup/chmod_permissions.sh

メンテナンスモードの終了

最後にメンテナンスモードから通常運転モードへと移行する:

$ sudo a2dissite info.kawaz.org
$ sudo a2dissite dev.kawaz.org
$ sudo a2ensite www.kawaz.org
$ sudo service apache2 reload

この後先に作成したバックアップファイルの削除を行う:

$ sudo rm ~/dump.sql
$ sudo rm ~/dump.tar.gz