回答:
イメージタイプのバックアップにはいくつかの問題があります。
それはしようとした真の方法に固執するのが最善です: tar
とdump
。私が使用しdump
ているのは、tarよりも個々のファイルのバックアップと抽出がはるかに速く、増分バックアップの処理が優れているためです。また、マルチスレッド圧縮を使用します。これは、今日のマルチコアマシンに適しています。どちらの方法でも、バックアップを作成するときは、サービスをシャットダウンして、バックアップ中にファイルが書き込まれていないことを確認する必要があります。LVMを使用している場合は、スナップショットを作成するのに十分な時間だけ実行する必要があるので、サービスをオンラインに戻し、スナップショットをバックアップできます。cron
毎晩自動的に実行するスクリプトは次のとおりです。
#!/bin/bash
set -e
declare -a LEVELMAP=(1 5 4 5 3 5 4 5 2 5 4 5 3 5 4 5 1 5 4 5 3 5 4 5 2 5 4 5 3 5 4 5)
DATE=`date +%-d`
LEVEL=${LEVELMAP[$DATE-1]}
echo Performing a level $LEVEL dump
#shutdown services here
sync
lvcreate -s -n snap devserv/root -L 500m
#start them back up here
dump -$LEVEL -quz9 -b 1024 -f /backup/dump.$LEVEL /dev/mapper/devserv-snap
lvremove -f devserv/snap
サーバーをアップグレードするときに、通常レベル6(フル)のダンプを6か月ごとに作成します。このスクリプトは、月の1日と17日にレベル1のダンプ(レベル0以降に変更されたすべてのファイル)を作成し、レベル2を交互に実行します-5日の残り。
これは、復元するダンプが最大で5つあるシステムを復元することを意味します(レベル1のダンプの直後にサーバーが停止した場合、レベル0と1を復元する必要があるだけです)、いくつかのダンプが最終日、数週間、数か月必要に応じて、古いファイルを取り出すことができます。異なる時点で変更されたため、ファイルの複数のバージョンが存在する可能性があります。
複数のポイントに戻って古いファイルを引き出すことに関心がない場合は、6か月ごとにレベル0、毎週月曜日にレベル1、隔週ごとにレベル2を実行するのがより簡単な方法です。
dump
?番号; dump
マウントされていない、または読み取り専用でマウントされたファイルシステムからの読み取りを想定しています。ファイルシステムを解析し、マウントしてカーネルを介してファイルを読み取るよりも速くデータをバックアップします。
Clonezillaなどのプログラムを使用できます。アクロニスのように見え、Windows向けの真のイメージ http://clonezilla.org/ clonezillaのチュートリアルは、ここで見つけることができます。
Redoバックアップを調べることもできます。また、CloneZillaのような完全なイメージを作成します。私はそれがより速く、よりユーザーフレンドリーなアプローチを好む。あなたはここでそれに関する情報を見つけることができます:http : //redobackup.org/