パーソナルツール
現在の場所: ホーム Tips SystemRescueCDでバックアップ

SystemRescueCDでバックアップ

SystemRescueCDを使ってバックアップをとる方法です。

SystemRescuecCDでバックアップ

SystemRescueCDをつかってパーティションをイメージで丸ごとバックアップをとる方法です。

事前準備

ダウンロード

まずは、公式サイトからSystemRescueCDのイメージをダウンロードしてきます。

http://www.sysresccd.org/Main_Page

ダウンロードしたisoファイルをCD-R等に焼いてください。
もちろんですが、isoファイルに対応している焼きソフトを使ってくださいね。

ちなみにwindowsで、フリーの焼きソフトならば「DeepBurner」とかがお勧めです。

http://www.deepburner.com/ 公式サイト
http://www.forest.impress.co.jp/lib/sys/hardcust/cddvdburn/deepburner.html 窓の杜
バックアップ領域の情報収集

リストアの際に「/etc/fstab」および「fdisk -l」の情報が必要となりますので、事前に情報を取得しておきます。

/etc/fstab 情報
# cat /etc/fstab
LABEL=/                 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=SWAP-hda2         swap                    swap    defaults        0 0
fdisk -l 情報

リストアする際には、現在のパーティションより1シリンダーでも小さい領域にデータをリストアすることは出来ません。
ですので、リストアを行うHDのフォーマットを行う際にこのシリンダー情報がとても重要になってくるのです。

ちなみに、使用しているシリンダーの値は「Start」「End」の項目で確認することができます。

# fdisk -l

Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14          78      522112+  82  Linux swap / Solaris
/dev/sda3              79        1044     7759395   83  Linux

バックアップの取得

SystemRescueCDからの起動

BIOSでCDから起動出来るように設定しておく必要があります。
起動順番にも注意してください。HDの先にCDから起動できるようにする必要があります。

01_SystemRescue.jpg(57424 byte)
キーマップ選択

使用するキーボードのキーマップを選択します。
日本語キーボードの場合は「22 jp」なので、22と入力します。

02_SystemRescue-keymap.jpg(45349 byte)
起動処理完了画面

起動シークエンスが終了しましたら、下記のような画面が表示されます。

03_SystemRescue-kidou.jpg(82883 byte)
バックアップデータ保存用HD接続

バックアップデータを保存するために外付けUSB-HD などを接続します。
正常にデバイスが接続できたら、fdisk -l や dmesg等でデバイス名を確認することが出来るはずです。

また注意点としては、接続するHDはFATかext2,ext3等でフォーマットされてる必要があります。 NTFSではSystemRescueが書き込み出来ないので不可です

# fdisk -l

Disk /dev/sda: 8589 MB, 8589934592 bytes  <--バックアップ対象HD
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14          78      522112+  82  Linux swap / Solaris
/dev/sda3              79        1044     7759395   83  Linux

Disk /dev/sdb: 8589 MB, 8589934592 bytes   <--バックアップデータ保存用HD
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        1044     8385929+  83  Linux

今回の作業は、バックアップをするデータがあるHDのデバイス名が/dev/sda
バックアップデータを保存するHDのデバイス名を/dev/sdb
の場合を想定していますので、デバイス名は適宜読み替えてください。

マウント用ディレクトリの作成

接続したHDは「mount」しなくては使用できませんので、/mntディレクトリの下に適当な名前のディレクトリを作成します。

今回は/mntの下にdiskという名前のディレクトリを作成することにします。

# mkdir /mnt/disk
mount(マウント)実行

mountコマンドにて実際にマウントします。

# mount /dev/sdb1 /mnt/disk/

正常にマウントできている事をdfコマンドを使用し確認します。

# df -h
Filesystem            Size  Used Avail Use% Mounted on
tmpfs                 123M   21M  102M  17% /
/dev/sr0              163M  163M     0 100% /mnt/cdrom
/dev/loop0            128M  128M     0 100% /mnt/livecd
udev                   10M  176K  9.9M   2% /dev
tmpfs                 123M  3.4M  119M   3% /mnt/livecd/lib/firmware
tmpfs                 123M     0  123M   0% /mnt/livecd/usr/portage
/dev/sdb1             7.9G  147M  7.4G   2% /mnt/disk
バックアップ実行

無事バックアップデータ保存用HDの接続が完了しましたら、 SystemRescueCDのpartimageコマンドを使用してバックアップを実行しています。

# partimage

partimageコマンドを実行すると、図のような画面が表示されます。

  1. 「Partition to save/restore」項目にてバックアップを行うパーティションを選択します。
  2. 「Image file to create/use」項目に、バックアップデータを保存する場所を指定します。
    ※今回の場合は/mnt/disk/[バックアップデータ名]となります。
  3. 「Action to be done」項目にて「Save partition into a new image file」がチェックされていることを確認します。
  4. 「F5」キーを押下するか、画面上の「Next (F5)」を選択後「Enter」キーを押下します。
    ※次工程の画面へ遷移します。
04_SystemRescue-partimage-1.jpg(49625 byte)
  1. 「Compression level」項目でバックアップデータの圧縮レベルを指定することが出来ます。
  2. 圧縮レベルの説明 (適宜自分の環境にあったレベルを選択してください。私のおすすめはGzipです。)

    None
    圧縮を行いません。バックアップデータは大きくなりますが、バックアップスピードは早いです。
    Gzip
    gzip形式にて圧縮を行います。 バックアップデータの大きさとスピードのバランスが良いです。(おすすめです。)
    Bzip2
    bzip2形式にて圧縮を行います。バックアップデータは1番小さくなりますが、圧縮にCPUを非常に使うのでバックアップに時間がかかります。
  1. 圧縮レベルの設定が完了しましたら、「F5」キーを押下するか、画面上の「Continue (F5)」を選択後「Enter」キーを押下します。
    ※次工程の画面へ遷移します。
05_SystemRescue-partimage-2.jpg(46072 byte)
  1. バックアップデータの詳細説明を記述することができます。ここで説明を記述しておくとリストア時に詳細情報が表示されます。必要がなければそのまま「OK」を選択し「Enter」キーを押下してください。
    ※バックアップパーティションの解析後(データの大きさにより時間掛かることがあります)次工程の画面へ遷移します。
06_SystemRescue-partimage-3.jpg(29892 byte)
  1. バックアップデータの詳細情報が表示されるので、「OK」を選択し「Enter」キーを押下してください。
07_SystemRescue-partimage-4.jpg(49203 byte)
  1. 実際にバックアップが始まります。バックアップする領域の大きければ大きいほど時間が掛かりますので、ゆっくりとバックアップが終わるのを待ちましょう:-)
08_SystemRescue-partimage-5.jpg(51986 byte)
  1. バックアップが完了すると「Success」画面が表示されるので「Ok」を選択し「Enter」キーを押下します。
09_SystemRescue-partimage-6.jpg(25474 byte)

以上の工程を、バックアップするパーティションの分だけ繰り返します。
ただし、swap領域にかんしてはバックアップをする必要はありません。

バックアップデータの確認

バックアップデータが取得されているか確認します。

# ls -la /mnt/disk/
total 718436
drwxr-xr-x 3 root root      4096 Jan 18 10:40 .
drwxr-xr-x 9 root root       180 Jan 18 10:11 ..
-rw------- 1 root root   4703249 Jan 18 10:14 centos5-sda1.000
-rw------- 1 root root 730218059 Jan 18 10:40 centos5-sda3.000
drwx------ 2 root root     16384 Jan 18 10:10 lost+found

※バックアップデータが2GB以上ならば、000 001 002 と勝手に分割されます。
centos5-sda3.000
centos5-sda3.001
centos5-sda3.002
こんな感じです

ディスクのアンマウント

バックアップが正常に完了しましたら、現在接続されているバックアップデータ保存用HDの「umount」処理を実行します。

 # umount /mnt/disk/

dfコマンドにてumount されていること確認します。

# df -h
Filesystem            Size  Used Avail Use% Mounted on
tmpfs                 123M   24M  100M  20% /
/dev/sr0              163M  163M     0 100% /mnt/cdrom
/dev/loop0            128M  128M     0 100% /mnt/livecd
udev                   10M  176K  9.9M   2% /dev
tmpfs                 123M  3.4M  119M   3% /mnt/livecd/lib/firmware
tmpfs                 123M     0  123M   0% /mnt/livecd/usr/portage
サーバ再起動

これでバックアップ作業は完了となりますので、サーバを再起動します。

# reboot

SystemRescueCDが起動するまえCDを排出することを忘れないでください。
さもないと、またSystemRescueCDが起動してしまいますからね。:-p

以上でバックアップはおしまいです。