実行中のDebianシステムを何らかのイメージファイルにバックアップすることは可能ですか?元の(バックアップされた)Debianシステムに障害が発生した場合、ddを使用して別のハードディスクに簡単に書き戻すことができますか?
Debian Wheezyをraspberry piで実行しているため、リポジトリで直接利用できるツールを特に探しています。したがって、Debianリポジトリのパッケージに対して非常に信頼性の高いARMアーキテクチャのサポートが必要です。
実行中のDebianシステムを何らかのイメージファイルにバックアップすることは可能ですか?元の(バックアップされた)Debianシステムに障害が発生した場合、ddを使用して別のハードディスクに簡単に書き戻すことができますか?
Debian Wheezyをraspberry piで実行しているため、リポジトリで直接利用できるツールを特に探しています。したがって、Debianリポジトリのパッケージに対して非常に信頼性の高いARMアーキテクチャのサポートが必要です。
回答:
dd
RAWディスクとまったく同じサイズのイメージファイルを生成してもかまわない場合に適しています。rsync
簡単なファイルレベルのアクセスが必要な場合に適しています。ただし、ファイルシステムをバックアップする標準的な手段はdump
and restore
(aptitude install dump
)です。
Raspberry Piのようなデバイスの場合、MS-DOSパーティションテーブルとディスクが/ dev / sdaであると仮定して、次のようにバックアップします。
dd if=/dev/sda of=sda-boot-sectors.img count=2048
ディスクのブートセクションのイメージを取得します。fdisk -lu /dev/sda >sda-partition-table.txt
後で人間が参照できるようにします。dump -0af sda1-root-level0.dump /dev/sda1
バックアップするパーティションごとに繰り返します。その後、ロットを圧縮して、安全な場所に置いてください。復元するには、使用したいdd
、パーティションテーブルとブートセクタを復元するパーティションテーブルをリロードする、新しいファイルシステム(S)、および使用することcd /mnt/new-filesystem; restore -rf /some-location/sda1-root-level0.dump
。
利点:
dump
ACL、拡張属性、所有権、スパースファイル、特別なファイルシステム属性など、ファイルシステムの完全なコピーを取得します。すべてがそのままダンプされます。欠点:
rsync
バックアップで取得可能)を取得するのはより困難です。ext3
ファイルシステムをダンプしてext4
1つに復元することはできますが、あらゆるタイプのファイルシステムをダンプできます。ほとんどの成熟したファイルシステムには独自のdump
バージョンがあります。標準のDebian dump
はをext2
、ext3
そしてext4
。Flash固有のファイルシステムを使用する場合、オプションが異なる場合があります。dump
ファイルシステムが書き込まれるべきではないこと。つまり、これは理にかなった制限のように聞こえますが、マンページに記載されていないのは残念です。だから誰かがこのエラーを
mkfs.ext4 /dev/sda1; mount /dev/sda1 /mnt/disk; cd /mnt/disk; dump -0af - /dev/sda5 | restore -rf -
使用するdd
ブートセクタのためにとrsync -aHS
ファイルのため。/ proc / sysやRAMディスク(tmpfs)などの「仮想」ファイルシステムを除外する必要があります。
パーティショニングも維持したい場合は、でダンプするsfdisk
か、で再作成できますparted
。
以下のためのDebian、あなたが本当にあなただけバックアップする必要があるデータや設定ファイルを。
既存の状態をバックアップするには:
dpkg --get-selections > dpkg_selections
。sudo debconf-get-selections > debconf_selections
。これを新しいシステムに適用するには:
sudo debconf-set-selections < debconf_selections
。dpkg --set-selections < dpkg_selections
。apt-get dselect-upgrade
。あなたのデータは、主にする必要があります/home
し、/var
(例えば、/var/lib/mysql
MySQLの、/var/www
Apacheの、など)。どのアプリケーションがあなたにとって重要かを理解できるはずです。
構成は主にになり/etc
ます。繰り返しますが、あなたにとって重要なものを選ぶのは難しくありません。
debconf-get-selection
実行するapt-get install debconf-utils
私は非常に多くのバックアップおよび復元ソフトウェアを試しましたが、決して幸せではありませんでした。これが今私がしていることです。予備のコンピューター(同じMB、NICカードなど)に2つ目のDebianをインストールしています。毎晩、マシンAからマシンBにrsyncを実行します。実行中の2つのシステムの競合が望ましくないため、いくつかのファイル(/ etc / network / interfaces、/ etc / hosts、/ etc / hostname)を保留します。実際、それらのコピーは別のフォルダーにあります。また、マシンBで実行する必要のないサービス(postfix、mysqlなど)も無効にします。マシンBに記述されたスクリプトを使用して、基本的にマシンAに変換し(保留したファイルを置き換えます)、NICを再起動し、無効にされたサービスを有効にします。もちろん、スクリプトを実行するときはマシンAをオフにする必要があります。そうしないと大混乱が発生します。マシンAをオフにし、スクリプトを実行して、マシンBを毎月テストします。いくつかのテストを実行して、それが最新で適切に実行されていることを確認します。それは魅力のように機能します!
Clonezillaをご覧ください。標準のDebianリポジトリにリストされています。http://clonezilla.org/
編集:おそらくそうではありません。Clonezillaのフロントページの要件は「X86またはx86-64プロセッサ」です
mount -o remount,ro
、を選択した場合にコピーするドライブdd
、dump
または同様のドライブ。を含むファイルシステムrsync
または他の方法を含むファイルシステムをコピーすることcp
は、ライブシステムにとって安全です。