web-dev-qa-db-ja.com

起動可能なバックアップの同期

jwz 言及 PSA:バックアップ かなり賢いバックアップシステム。バックアップ方法は、基本的に交換用ドライブに復元することです。これはOSXで簡単に機能するようです。このガイドをUbuntuに採用するには、何をする必要がありますか?

6
jldugger

2つの外部ドライブをシステムドライブと同じ方法でパーティション分割し、すべてのパーティションをrsyncし、システムドライブから外部ドライブにブートセクター(ドライブの最初のセクター)を追加します。パーティションを正しく作成すれば、醜いですが、サービス可能です(大きい場合)。

また、モンドレスキューのようなより高度な「システムスナップショット」システムも見てください。これは、そのようなトリックを処理してくれます。

3
womble

Ubuntuの場合、 sbackup を使用することをお勧めします。「ライブブータブルディスクの同期」全体は、Linuxではうまく機能しません。 2つのドライブでUUIDが異なる場合(9/10になります)、バックアップディスクから起動して起動して実行することはできません。UbuntuCDから起動して/ etc /を編集する必要があります。最初に交換用ドライブのfstab。 UUIDが同じである場合、2つを同時にマウントしようとすると、問題が発生します。

この種のトリックを可能にするMacファイルシステムには違いがあります。rsyncを介してこのメ​​ソッドを実行することは聞いたことがありませんが、非常に一般的ですライブブートボリュームのディスクイメージを作成するだけでバックアップできるOSXの世界。これは、後で復元できます。このようなイメージを復元する機能は、OSXインストールCDで提供されています。

Ubuntuの最も簡単な解決策は sbackup で、Ubuntuを再インストールするだけです(Ubuntuの「ライブCD」からディスクイメージを復元するのと実質的に同じです。その後、以前のパッケージの選択、構成、およびデータをsbackupアーカイブ。かなり単純で、新しいユーザーがバックアップ/インストール/復元の完全な手順を問題なく実行できるハウツーを作成できると思います。

2
saschabeaumont

賢く、事前に計画している場合は、LVMを使用してこれを実現できます。

LVMを使用するドライブにシステムがあるとします。実際、システム全体がどこかのLVMボリューム上にあります。

2台目のハードドライブを外付けケースに入れて、ドライブをシステムに接続し、LVMにドライブを認識させてから、LVMのミラー機能を使用してドライブを所定の位置にコピーします。完全なコピーが終了したら、ミラーを解除します。これで、正確なスナップショットが時間内に作成されます(ミラーは、コピープロセス中に発生した変更も記録するため)。今必要なのは、起動可能にすることだけです。 GRUBを使用している場合は、既存のシステムからこれを行うことができます。

本当に賢くなりたい場合は、このプロセスをスクリプトとして記述し、定期的にスクリプトを実行してください。実行時に外付けドライブが接続されていることを確認するだけです。

1
Avery Payne

私があなたの質問を正しく理解しているかどうかわからない:

Linuxマシンをバックアップしてbootable restore cd'sを作成する場合は、mondoを参照してください。

これは、サーバー全体を.isoイメージにスナップショットできるように、カーネルと必要なすべてのハードウェアドライバーをバックアップする巧妙なバックアッププログラムです。その後、CD/DVDに書き込むことができます。次に、復元が必要な場合は、最初のCDを挿入して電源を入れ、復元オプションを選択します。

0
Brent

正確なステップバイステップのレシピはありませんが、このようなシステムの構築を開始すると思います。私はあなたがあなたのアイコン、タグに基づいてUbuntuユーザーであると仮定しています。

  • 実行中のシステムに一致する mini.iso から始めて、ポータブルドライブにCLIのみをインストールします。私はそれを1つの大きなパーティションにします。
  • ポータブルドライブからの起動をテストして、これまでのところすべてが機能していることを確認します。
  • ポータブルドライブへのインストール時に、/ etc/fstabと/boot/grub/menu.listを更新して、uuidがまだ使用されていない場合は使用します。
  • バックアップスクリプト(/ root/rsync-to-portadrive)を作成し、次のようにファイル(/ root/rsync-exclude)を除外します(おそらく除外ファイルを追加/微調整する必要があります)。

私はこれをテストして詳細を調べていませんが、rsyncを実行して/ etc/fstabまたは/ bootを上書きしない場合でも、システムは起動し、ルートファイルシステムをマウントできるはずです。/root/rsync-excludeファイルを使用すると、バックアップする必要のないtmpファイルやジャンクを含めることができなくなり、/ bootディレクトリとfstabが上書きされるのを防ぐことができます。

私が言ったように、私はテストしていません。私の基本的な計画は健全であると信じています。これはシステムをバックアップするための優れた方法ではないと信じている他のポスターに同意します。 mysqlのようなデータベースアプリケーションがある場合は、それらを個別にバックアップする必要があります。

/ root/rsync-to-portadrive

# mount the portable device
mkdir -p /srv/portabackup/
mount /dev/disk/by-uuid/19976dc9-2d2b-43e3-87ff-d3fb071ddcb3 /srv/portabackup/

# make a backup of your /boot and fstab
mkdir -p /srv/portabackup/boot_backup/
cp /etc/fstab /srv/portabackup/boot_backup/fstab
rsync -va /boot/ /srv/portabackup/boot_backup/
# sync the main system
rsync -vaEH --delete --stats -D --numeric-ids \
      --exclude-from=/root/rsync-exclude \
      / /srv/portabackup/
# unmount
umount /srv/portabackup/

/ root/rsync-除外

- lost+found/
- core
- *~
- .nfs*
- /tmp/***
- /var/tmp/***
- /boot/***
- /boot_backup/***
- /etc/fstab
- /etc/mtab
- /srv/portabackup/***
- /proc/***
- /sys/***
+ *
0
Zoredache

ライブシステムの安全なコピーを作成することはできません。最善の策は、上記のいずれかの方法でバックを実行するスクリプトを実行するように変更されたブートディスク(ライブCDなど)を作成することです。

これらの手順 を使用して、ddrescueでクローンを作成できます。

0
justinhj

あなたは頻度と制約について言及しませんでした。デスクトップの場合、次のようなものに基づいて、ドライブのダムを完全に複製する単純な夜間のcronスクリプトを使用しました。

dd if=/dev/hda of=/dev/hdb

利点

  • もっと単純にすることはできません。問題がある場合は、故障したドライブを捨てるだけで、新しいドライブを使用できます。
  • wholeドライブを再度読み取り、wholeを書き込むためまた、いくつかの不良セクタをプロアクティブな方法で検出するのも良いことです。
  • ファイルシステムとパーティショニングにとらわれない。

短所

  • 恐ろしく遅い時間を読んでください)。基本的に同じことを行うカスタムツールを使用して改善しましたが、宛先を並行して読み取り、データが変更された場合にのみ書き込みを発行しました。
  • 多くのライブファイルシステムを複製しているので、特にクラッシュのようなものではないため、ドライブの最初の部分が最後のファイルシステムと同期していません。したがって、メンテナンスベースで実行することをお勧めします(ファイルシステムのR/Oを一時的に再マウントします)

他に指摘されているように、システムで LVMスナップショット などの「スナップショット」が許可されている場合は、より複雑なソリューションが存在します。バックアップ/リカバリの部分はあなたの質問が示唆するほど単純ではないので、私は私の提案をしました。

0
Steve Schnepp