システムバックアップ・リストア手順
はじめに
用途
この文章には、TeamFile サーバ全体のシステムバックアップ及びバックアップデータのリストア手順が記 述されております。
対象者
TeamFile サーバ(Linux マシン)に対して管理者権限でアクセスできるサイト管理者
概要
バックアップ・リストアツール
TeamFile サーバのシステムバックアップ及びリストア操作には、TeamFile サーバのメンテナンスツール を利用します。これらの操作は全て TeamFile サーバマシン(Linux サーバ)での作業となりますため、システ ムコンソールか、telnet または ssh ターミナルから操作ください。
バックアップ・リストアによる影響
バックアップ及びリストア操作では、TeamFile サーバプロセス及びデータベースプロセスの完全な停止 (サービス停止)が必要となります。大容量データのバックアップやリストアでは停止時間が長くなりますので、 予めサービスの停止を通知するなどして影響が及ばないようご考慮ください。
バックアップ・リストア操作を行う前に
バックアップ及びリストア操作を行うに当たり、以下を予めご用意ください。
-
システム導入時にお渡しした「導入設定手順書」
-
TeamFile サーバに telnet または ssh で接続して作業するためのターミナルソフト(システムコンソール でも問題ございません)
バックアップデータはファイルまたはディレクトリとしてディスク上に保存されます。それらのファイルはテープ 装置などを使って外部記憶媒体にバックアップして下さい。
バックアップ手順
バックアップには「手動」と「自動」の2つがございます。それぞれ手順が異なりますため、分けて記述いたします。
前準備
以下に記述するバックアップ手順では、幾つかのコンフィグファイルが保存されません。これらは、 TeamFile セットアップ後に適切な手段によってバックアップして頂くようお願い致します。 バックアップ対象は以下の通りです。
/usr/local/teamfile/tfsplugin/plugins/fsscipher (自動暗号化が有効な場合)
手動バックアップの場合
(1) バックアップツールの起動
Linux マシンにログインし、メンテナンスツールを起動します。
$ su -
# /usr/local/teamfile/www/bin/maintenance.sh
【 画面表示例 】

(2) 表示されたメニュー画面から【 Backup & Restore 】を選択し、バックアップ&リストアメニューを表示し てください

(3) 【 Backup TeamFile 】を選択し、バックアップ処理を実施下さい いくつか質問されますので、システム導入時に記述して頂いた設定値を入力してください。
__* Can you stop TeamFile now? (y/n) __
TeamFile サーバを停止してもよいかどうか。 「y」を入力しなかった場合には停止しませんが、バックアップに失敗したり、整合性のないデータが取得され たりすることがございます。「y」を必ず選択して頂きますようお願い致します。
__* Uhm, Do you still perform now? (y/n) __
「Can you stop TeamFile now?」で「n」を選択された場合に表示される選択肢。本当にこのオペレーショ ンを続けても良いかどうか。問題なければ「y」を選択ください。
__* Input DB Host (default: localhost) : __
データベースサーバが動作しているマシンの IP アドレスまたはホスト名。 通常は同一マシン上で動作しておりますため、そのまま Enter を押下してください。
__* Input DB Port (default: 5432) : __
データベースサーバへの接続ポート番号。 通常はデフォルト値で問題ございませんので、そのまま Enter を押下してください。
__* Input DB User (default: xxxx) : __
データベースに接続するためのユーザ ID。
通常はデフォルト値で問題ございませんので、そのまま Enter していただくか、「導入設定手順書」に記述さ れた接続ユーザ ID を入力ください。
__* Select repository DB name that you want to backup : __
バックアップしたいデータベースの名称。 バックアップするデータベース名は特に指示がなければ「db_teamfile」です。導入時に変更されている場合、 「導入設定手順書」に記述された接続データベース名を入力して下さい。
__* Select / Input storage root path that you want to backup : __
バックアップしたいファイルストレージのパス名。 通常は、「xxx/ロケーション名」と表示されたパス名を入力して下さい。
【 実行例 】

(4) バックアップファイルの取得
操作が完了いたしますと、以下のパスにバックアップファイルが作成されます。
これらのファイルをテープ装置などにより外部記憶媒体に保存して下さい。
【 バックアップディレクトリのパターン 】
/var/lib/teamfile/backup/yyyymmdd_hhmiss
(例)
/var/lib/teamfile/backup/20060420_104844
【 バックアップファイル一覧 】
| # | ファイル名パターン | 役 割 |
|---|---|---|
| 1 | (データベース名) .bkdb.dat | データベースのバックアップデータ |
| 2 | (ロケーション名) .bkst.tar | ファイルストレージのバックアップデータ。 TAR 形式でバックアップされます |
| 3 | (ロケーション名).bkcf.tar | コンフィグファイル(/usr/local/teamfile/www/conf)のバック アップデータ。TAR 形式でバックアップされます |
自動バックアップの場合
自動バックアップは、定期メンテナンススクリプト「dailybat.sh」によって1日1回の間隔で自動的に取得さ れます。手動バックアップの場合とは異なる形式でバックアップされますので、ご注意ください。なお、バックア ップスケジュールは変更できます。これに関しましては、後述致します。
【 バックアップディレクトリ】 /var/lib/teamfile/backup/n
バックアップデータは1履歴分だけ保持されることに注意ください。「/var/lib/teamfile」はインストール時の 設定により異なります。ご注意ください。
【 バックアップファイル一覧 】
| # | ファイル名パターン | 役 割 |
|---|---|---|
| 1 | (データベース名) .bkdb.dat | データベースのバックアップデータ |
| 2 | (ロケーション名) .bkst/ | ファイルストレージをバックアップしたディレクトリ ファイルではありません |
| 3 | (ロケーション名) .bkcf/ | コンフィグファイル(/usr/local/teamfile/www/conf)のバック アップデータ。ファイルではありません |
- データベースのバックアップ形式は「手動」のそれと同じです
- ファイルストレージとコンフィグファイルのバックアップ形式は、TAR 形式(手動の場合)ではなく、ディレ クトリそのもののコピーとなっております。これはバックアップの高速性を考慮したためです
- 上記ファイルとディレクトリを外部記憶媒体に保存して下さい。
自動バックアップスケジュールの変更方法
通常は、1 日 1 回の間隔で実行するようスケジュールされておりますが、変更することもできます。変更するには以下の手順に従ってください。
(1) root ユーザで Linux サーバにログインして下さい
(2) 以下のコマンドを入力して cron の設定ファイルを開いてください
# crontab -e
(3)「dailybat.sh」が含まれている行の内容を変更します。crontab のフォーマットは以下の通り。
(分)(時間)(日)(月)(曜日)(実行コマンド)
各項目は半角スペースによって区切られています。
| 項目 | 値 | 内容 |
|---|---|---|
| 分 | 0 〜 59 | 実行する時刻の「分」を表す |
| 時間 | 0 〜 23 | 実行する時刻の「時間」を表す |
| 日 | 0 〜 31 | 実行する時刻の「日」を表す |
| 月 | 0 〜 12 | 実行する時刻の「月」を表す |
| 曜日 | 0 〜 7 | 実行する時刻の「曜日」を表す。 0と7は日曜日で、1から5で月曜日から金曜日まで表します |
| 実行コマンド | (文字列) | バックアップコマンドのコマンドラインを表します。 この部分は手動で編集しないようお願いします |
- 指定しなければ「*」(アスタリスク)を入力
- 範囲指定する場合には「-」(ハイフン)で数値を繋ぎます
(例 1) 毎日午前 4 時 30 分に実行する
30 4 * * * (実行コマンド)
(例 2) 毎週毎週月曜日から金曜日の午後 23 時 59 分に実行する
59 23 * * 1-5 (実行コマンド)
(例 3) 毎月 1 日の午前 0 時 0 分に実行する
0 0 1 * * (実行コマンド)
(4) 編集結果を保存して vi エディタを終了させます
以上で設定は終了です。設定は即時に反映されます。
リストア手順
リストアを自動で行うことはできません。メンテナンスツールをご利用いただき、手動で行ってください。
OS 及び TeamFile パッケージの再インストール
サーバハードウェア等のトラブルにより入れ替えが行われた場合には、予め取得しておいたシステム全体
のバックアップから元に戻すか、OS 及び TeamFile サーバパッケージの新規インストールを実施下さい。
バックアップデータの書き戻し
リストアデータを格納するディレクトリを作成し、外部記憶装置等からバックアップデータを取得して、格納してください。
【 手動バックアップデータの場合 】
/var/lib/teamfile/backup/yyyymmdd_hhmiss
- 「yyyymmdd_hhmiss」にはタイムスタンプが入ります。
- 「/var/lib/teamfile」はインストール時の設定(バックアップルートパス)により異なります。これはデフォ ルト値の例です
【 自動バックアップデータの場合 】
/var/lib/teamfile/backup/n
リストアツールの起動
リストアツールはバックアップツールと同じメンテナンスツール上にあります。
$ su –
# /usr/local/teamfile/www/bin/maintenance.sh
【 画面表示例 】

(1) 【 Restore TeamFile 】を選択し、リストア処理を実施 いくつか質問されますので、システム導入時に記述して頂いた設定値を入力ください。
* Can you stop TeamFile now? (y/n)
TeamFile サーバを停止してもよいかどうか。必ず「y」を入力して下さい。
* Uhm, Do you still perform now? (y/n)
「Can you stop TeamFile now?」で「n」を選択された時に表示される選択肢です。本当に TeamFile サー バを動作させたままリストア操作を行っても良いかどうかを確認します。
* Input DB Host (default: localhost) :
データベースサーバが動作しているマシンの IP アドレスまたはホスト名。
通常は同一マシン上で動作しておりますため、そのままを押下ください。 __
* Input DB Port (default: 5432) :
データベースサーバへの接続ポート番号。 通常はデフォルト値で問題ございませんので、そのまま Enter を押下ください。
* Do you want to create new repository database for restore? (y/n):
リストア先のデータベースを新規に作成するかどうか。
システムクラッシュによるリストア動作では、「y」を入力して下さい。既存のデータベースを上書きする場合に は、「n」を入力します。この場合、既存のデータベースの内容は全て消去されますので、ご注意ください。
* Select repository DB name that you want to restore (expect template0, template1):
リストア先のデータベース名。
上部に表示されているデータベース一覧から選択していただくか、新規の場合には新しいデータベース名を入力して下さい。多くの場合、バックアップ元のデータベース名を入力することになります。名称は、データベ ースのバックアップファイル名「(データベース名) .bkdb.dat」から判ります。
* Which type do you want to use [tar/directory] (default : directory):
バックアップ形式の選択。
「手動バックアップ」によって取得されたデータのリストアでは「tar」を、「自動バックアップ」によって取得され たデータによるリストアであれば、そのまま Enter を押下してください。
* Select / Input storage backup directory path :
ストレージバックアップデータが格納されたディレクトリの選択。
「directory」を前項で入力されていた場合に表示されます。バックアップデータを格納したディレクトリパスを、 画面上方に「--rsync directory ---」という表題で表示されたパス名の候補を参考に入力して下さい。
* Select / Input storage backup TAR file path :
ストレージバックアップデータの選択。
「tar」を前項で入力されていた場合に表示されます。バックアップデータファイルのパスを、画面上方に「--tar ---」という表題で表示されたパス名の候補を参考に入力して下さい。
* Select / Input repository db backup data path :
データベースバックアップデータの選択。
画面上方に表示されたパス名の候補を参考に入力して下さい。
* Continue? (y/n)
入力されたストレージパス、データベースファイルを解析し、リストアしたいデータベース&ストレージに間違い ないかどうかの確認。表示項目の意味は以下の通りです。
| # | 表示項目 | 意 味 |
|---|---|---|
| 1 | Repository DB Name | データベースの名称 |
| 2 | Repository DB Owner | 上記データベースへの接続ユーザ(オーナー) |
| 3 | Storage path | リストア先のストレージパスのトップディレクトリ |
問題なければ「y」を、問題があれば「n」を入力して下さい。
【 実行例 】

コンフィグファイルの書き戻し
コンフィグファイルは自動的にリストアされません。手動で書き戻してください。
バックアップされたコンフィグファイルは以下の通り。
【 手動バックアップデータの場合 】
/var/lib/teamfile/backup/yyyymmdd_hhmiss/(ロケーション名).bkcf.tar
【 自動バックアップデータの場合 】
/var/lib/teamfile/backup/n/(ロケーション名).bkcf/
何れも「/usr/local/teamfile/www/conf」以下の設定ファイルが格納されております。取り出して書き戻し てください。また、自動暗号化オプションを購入している場合、以下のディレクトリ内のデータを書き戻して下さ い。
/usr/local/teamfile/tfsplugin/plugins/fsscipher/conf
TeamFile サーバの再起動
全て終了しましたら、情報を反映するため、TeamFile サーバプロセスを再起動して下さい。
# /etc/init.d/teamfile restart