Edited at

Mondo Rescue を使ったバックアップとリカバリ

More than 3 years have passed since last update.


0. 参考


1. インストール


1.1. 環境


  • CentOS 7

  • CentOS 6.6


1.2. yumリポジトリからインストール


1.2.1 yumリポジトリを追加する。

yumリポジトリディレクトリに移動

# cd /etc/yum.repos.d

ダウンロード(CentOS7系)
# wget http://www.mondorescue.org/ftp/centos/7/x86_64/mondorescue.repo

ダウンロード(Rhel6、CebtOS6系)
# wget http://www.mondorescue.org/ftp/rhel/6/x86_64/mondorescue.repo


1.2.2. インストール

リポジトリの読み込みを確認する(結果にmondoが表示される)

# yum list mondo

インストール
# yum install mondo


1.3. 関連パッケージのインストール


  • lzo(高速圧縮ライブラリ)

  • lzop(高速圧縮ユーティリティ)

yumリポジトリからインストール

# yum list lzo lzop

どちらもbaseにある

# yum install lzop
両方インストールされる


2. バックアップ


2.1. 手順


2.1.1. SELinuxを停止する

設定ファイルを編集し、再起動する。

# vi /etc/selinux/config

~~

SELINUX=disabled
~~

# reboot


2.1.2. バックアップを取得する。


  • 安全にバックアップする場合はシングルユーザーモードに変更する。

# init 1


  • バックアップを実行。

# mondoarchive -O -i -N -d /mnt -E '/mnt' -s 4480m

主要なオプションは以下の通り。

option
説明

-i
ISOファイルをバックアップメディアとして使用する。

-r
DVDをバックアップメディアとして使用する。(growisofsがサポートしていないためsudoが必要)

-O
ISOファイルを出力する。

-p
出力するISOファイル名を指定する。指定しない場合は"mondorescue"が使用される。

-d
出力先(ディレクトリやバックアップデバイス)を指定する。

-E
除外するディレクトリを指定。自動で(/mnt/floppy, /mnt/cdrom, /proc, /sys, /run, /tmp)は除外される。

-N
ネットワークファイルシステム(NFS,SMBなど)を除外する。

-s
出力するISOファイルサイズを指定する。作成するファイルサイズが指定より大きくなる場合は複数に分割される。

-V
出力したISOファイルをベリファイする。

-g
GUIモード。

-S
作業フォルダを指定する。

-T
一時フォルダを指定する。

-D
差分バックアップを行う。


2.2. エラー対処


  • エラー: libgcc_s.so.1 must be installed for pthread_cancel to work

ライブラリをインストールして対応。

# yum install libgcc_s.so.1


3. リストア

リカバリするマシンのハードウェア要件は、バックアップ元と同様とする。


3.1. リストアの実行


  1. 仮想マシン上に1つのHDDで器を作る。

  2. ISOを起動時にマウントするようにセットする。

  3. 仮想マシンを起動する。

  4. Mondo Rescueのブート画面が表示されるので、"boot:"プロンプトでエンターキーを押しmondorescueを起動する。

  5. リストアメニューが表示されるため、"Automatically"を選択する。

メニュー
説明

Automatically
自動的にディスクのフォーマット、リストアを実行する。(通常はこれを使う)

Interactively
対話的にリストアを進める。(難しいらしい)

Compare only!
リストアファイルと現在のファイルシステムを比較する。

Exit to shell
終了してシェルプロンプトに戻る。

リカバリ終了後、シェルプロンプトに戻るため、システム再起動をする。

# reboot


3.2. リストア後の後片付け


  1. リブート後、fsckコマンドが実行された後にシステムが起動し、リストア完了。

  2. ネットワークの修正
    ネットワークの設定を修正する。


    • /etc/network/network-script/ifcfg-eth0 のMACアドレスを正しいものに合わせる。

    • /etc/udev/rules.d/70-persistent-net.rules では、複製されているので原本を消してeth*を書き直す。