バックアップイメージ/ファイルに保存する

バックアップイメージ/ファイルに保存する

私は、Linux ベースのオペレーティング システムを起動するマザーボードを搭載した機器を持っています。このハード ドライブをクローン化して、故障した場合に機器を動作させ続けるためのバックアップ プランを用意したいと考えています。これまでのところ、ハード ディスクを Linux が稼働している別の PC にマウントし、パーティションからデータを tar で取り出すことができました。ただし、パーティションのうち 2 つ (sdb2 と sdb13) が EXT3 ファイル システムとして表示されないため、どうすればよいかわかりません。sdb2 は 0x05 拡張で、sdb13 は 0x83 ですが、ファイル システムがないと表示され、マウントできません。また、異なるサイズの新しいハード ドライブを使用する場合、GRUB をどのように処理すればよいかまだわかりません。次の情報から十分な情報が得られれば、やりたいことが実際に可能かどうかを確認したいと考えています。

出力からfdisk -l

Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00066c45

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1              63      208844      104391   83  Linux
Partition 1 does not start on physical sector boundary.
/dev/sdb2          208845    31262489    15526822+   5  Extended
Partition 2 does not start on physical sector boundary.
/dev/sdb5          208908     6650909     3221001   83  Linux
Partition 5 does not start on physical sector boundary.
/dev/sdb6         6650973     7052534      200781   83  Linux
Partition 6 does not start on physical sector boundary.
/dev/sdb7         7052598     7646939      297171   83  Linux
Partition 7 does not start on physical sector boundary.
/dev/sdb8         7647003     7855784      104391   83  Linux
Partition 8 does not start on physical sector boundary.
/dev/sdb9         7855848    15679439     3911796   83  Linux
/dev/sdb10       15679503    23503094     3911796   83  Linux
Partition 10 does not start on physical sector boundary.
/dev/sdb11       23503158    24097499      297171   83  Linux
Partition 11 does not start on physical sector boundary.
/dev/sdb12       24097563    24691904      297171   83  Linux
Partition 12 does not start on physical sector boundary.
/dev/sdb13       24691968    31262489     3285261   83  Linux

出力からsfdisk -d

# partition table of /dev/sdb
unit: sectors

/dev/sdb1 : start=       63, size=   208782, Id=83
/dev/sdb2 : start=   208845, size= 31053645, Id= 5
/dev/sdb3 : start=        0, size=        0, Id= 0
/dev/sdb4 : start=        0, size=        0, Id= 0
/dev/sdb5 : start=   208908, size=  6442002, Id=83
/dev/sdb6 : start=  6650973, size=   401562, Id=83
/dev/sdb7 : start=  7052598, size=   594342, Id=83
/dev/sdb8 : start=  7647003, size=   208782, Id=83
/dev/sdb9 : start=  7855848, size=  7823592, Id=83
/dev/sdb10: start= 15679503, size=  7823592, Id=83
/dev/sdb11: start= 23503158, size=   594342, Id=83
/dev/sdb12: start= 24097563, size=   594342, Id=83
/dev/sdb13: start= 24691968, size=  6570522, Id=83

sdb 1、5、7、8、9、10、11、12 の EXT3 ファイル システムをマウントし、それぞれの内容を sdb1.tar、sdb5.tar などに保存することができました。

また、dd if=/dev/sdb of=./sdb_dd bs=512 count=1ドライブの MBR を というファイルに保存しましたsdb_dd

答え1

したがって、ディスク全体をバックアップしたいだけなら、各パーティションをマウントしてデータを tar で圧縮する手間をかける必要はありません。@Christopher が言ったように、clonezilla のようなものを使用できます。DD を使用してファイルにバックアップしたり、新しいディスクにバイト単位でコピーしたりすることもできます。DD の利点は、標準の GNU ユーティリティであり、ほぼすべての *nix ディストリビューションで使用できることです。

以下では、クローンするディスク上で実行されていないライブ ディスクまたは他の Linux OS を起動していることを前提としています。さらに、バックアップするディスクは /dev/sdb であると想定しています。

バックアップイメージ/ファイルに保存する

バックアップ

dd if=/dev/sdb | gzip -c /location_to_store_backup_image/myserver.img.gz

復元する

gunzip -c /location_to_store_backup_image/myserver.img.gz | dd of=/dev/sdb

他のディスクに直接

バックアップ

dd if=/dev/sdb of=/dev/sdb

復元する

クローンしたディスクをボックスに挿入し、システムを起動します =D

出典

http://www.linuxweblog.com/dd-image

関連情報