home ホームHTMLに役立つヒントマニュアルに書いてないきのぼず > きのぼずバックアップ

きのぼずバックアップ

■■目次■■
 ●システムを止める/動かす ●きのぼず全体のバックアップ ●掲示板データをバックアップする ●バックアップの効率的なやり方 ●自動バックアップ

●システムを止める/動かす R6.x/R7.x ▲このページのトップへ  ▲▲目次ページへ

 telnetが必要です。
 バックアップや、その他さまざまな作業を行う場合、きのぼずシステムを一時的に止めておくと安全に作業ができます。

・システムを止める chmod go-x kb.cgi
・システムを動かす  chmod go+x kb.cgi

 telnetできない場合は、FTPソフトでkb.cgi自体のパーミッションを変更し、実行権限をなくします。パーミッションを444とか666にしてしまえばいいはずです。


●きのぼず全体のバックアップ R6.x/R7.x ▲このページのトップへ  ▲▲目次ページへ

 telnetが必要です。

・kbフォルダへ行く cd ディレクトリ名 でkb.cgiのあるのディレクトリまで降りる
kbディレクトリに降りたら
・システムを止める chmod go-x kb.cgi
・一つ上のディレクトリへ戻る cd ..
・バックアップする tar cvfp kb■■.tar kb
 (kb■■はtarで固めるファイル名です。たとえばkb67とかしてください。)
・バックアップを圧縮 gzip kb■■.tar
 (圧縮後はファイル名はkb■■.tar.gzととなる)
・kbディレクトリに降りる cd kb
・システムを動かす chmod go+x kb.cgi

 バックアップをとったら、FTPでバックアップデータ(.tar.gzファイル)を手元にダウンロードしましょう。サーバに何かあっても手元のデータまでは復旧できます。僕はせっかくバックアップをとりながら、そのバックアップをサーバー上にそのままおいておいたため、サーバーがミラーリングディスクも含めてまとめてぶっ飛ぶというハードトラブルに見舞われたときに、バックアップごと掲示板データを失うという苦い経験をしました。せっかく投稿してくださった参加者の皆さんの貴重な知識が失われたかと思うと、このときは本当に泣きたかったです(;_;) 今思い出しても悔しいし悲しい。ひとえに私の管理不足が原因だからです。バックアップは必ず手元にダウンしましょうね。

 telnetできない場合は、FTPソフトでkbディレクトリを丸ごと手元にダウンロードしましょう。


●掲示板データをバックアップする R6.x/R7.x ▲このページのトップへ  ▲▲目次ページへ
 上の応用です。掲示板ごとにバックアップデータを取りたいときにやります。システム全体のバックアップは設置時にやればいいことで(イザとなれば手元のやつをもう一度アップすればシステムは動く)、掲示板のデータのバックアップの方が数倍大切です。何しろ自分で一から最書き込みすることは出来ない貴重なデータなんですから。私のように泣きたくなかったら、必ず定期的に実行しましょう。

 telnetが必要です。
・kbフォルダへ行く cd ディレクトリ名 で下のディレクトリに降りられる。kb.cgiのあるディレクトリまで降りる。
・システムを止める chmod go-x kb.cgi
・バックアップする tar cvfp 掲示板名.tar 掲示板名
・バックアップを圧縮 gzip 掲示板名.tar
 (圧縮後はファイル名は掲示板名.tar.gzととなる)
・システムを動かす chmod go+x kb.cgi

 この後、例によってできあがった「掲示板名.tar.gz」ファイルをFTPでダウンロードしておきましょう。

 telnetできない場合は、FTPソフトで掲示板ディレクトリを丸ごと手元にダウンロードしましょう。


●バックアップの効率的なやり方 R6.x/R7.x ▲このページのトップへ  ▲▲目次ページへ

 僕は上の手順のテキストを作っておいて、1行ずつコピーしてtelnetへペーストするという(こうするとtelnetにコマンドを打ち込まずにすむ)ぐーたらなことをしながらバックアップします。コマンドやファイル名の打ち間違いなどもないですし。

 定期的にバックアップをとるように心がけているので、僕の場合は前述の手続きの前に「前のバックアップを削除する rm -rf 掲示板名.tar.gz」というコマンド行を追加してメモしてあります。
 テキストファイルに書いておいて、これを1行ずつコピー、telnetにペーストする方法だと、だいたい10〜30秒くらいでシステムを動かすところまでいけます(発言数によってtarの作業量が異なります)。サッとできてしまいます。


※朗報! 綾之介さんにtelnetしなくてもバックアップできるツールができないかご相談したところ、乗り気になっていただきました! しばし待たれよ! 
●自動バックアップ R6.x/R7.x ▲このページのトップへ  ▲▲目次ページへ

 自動実行用のshファイルを作ってtelnetから実行すれば一気にバックアップができます。次のテキストをコピーし、自分の環境に合わせて必要なところを書き換え、「autobackkb.sh」という名前で保存してください。漢字コードはEUC、改行コードはLFです。
 このファイルはどこに置いてもいいですが、一応kbディレクトリにおきましょう。パーミッションは755に設定してください。
 使い方は簡単です。telnetしてkbディレクトリに行き、「./autobackkb.sh」と打ち込めば一気にバックアップできます。kbディレクトリ以外からコマンドを打ち込むには「/home/name/html/kb/autobackkb.sh」と打ち込みます。

-------------------------- ここから -----------------------

#!/bin/sh
# 自動バックアップツール。
# ファイル名は「autobackkb.sh」としてください。
# ファイルはどこに置いてもいいですが、kbディレクトリにおくのがいいでしょう。
# ファイルのパーミッションは755。
#
# kbディレクトリに移動する
cd /home/name/html/kb/
#
# 以下、●が三つありますが、これは対になってます。
# 1つの掲示板に大して3つの操作をします。●はファイル操作の部分なので
# 対になっている必要があるのです。
# 最初が削除、次がバックアップ、最後が圧縮です。
# ●古いバックアップを削除。必要なだけ削除文を追加する
# rm -rf 削除するバックアップファイル名
rm -rf test.tar.gz
#
# kbシステムを止める
chmod go-x kb.cgi
#
# ●バックアップする。必要なだけバックアップ文を作る
# tar cvfp 掲示板名.tar 掲示板名
tar cvfp test.tar test
#
# kbシステムを動かす
chmod go+x kb.cgi
#
# ●バックアップを圧縮。必要なだけ圧縮文を作る
# gzip 掲示板名.tar
gzip test.tar
# 後はFTPソフトでアクセスして、バックアップファイルを手元にダウンする。

-------------------------- ここまで -----------------------

 忘れずにバックアップファイルを手元にダウンロードしましょう。

 上のバックアップファイルをcronに登録すれば定期的に自動実行できます。

30 7 * * 0 /home/name/html/kb/autobackkb.sh

 telnetして「crontab -e」で↑これを書き込むと毎週日曜の朝7時30分にバックアップします。crontabの説明は「マニュアルに書いてないNAMAZU」を参照してください。viエディタの簡単なコマンドの解説もあります。


▲このページのトップへ  ▲▲目次ページへ