しらべっぱなし帽子

調べっぱなしにしないためのメモ。

Linux標準コマンドでシステムバックアップ・リストアしてみた ~リストア編~

はじめに

前回はバックアップについて書いたので、今回はリストアについて。

※バックアップ編はこちらから。

 

前提

  • OSをインストールする時点であること。
  • メディア挿入後、[Troubleshooting] - [ Rescure a Red Hat ・・・・] - [ 3 ] の順でで選択し、シェルが起動していること。
  • 保管先サーバとのNW疎通がとれていること。

 

方法

ざっくりとではありますが、リストアの流れとしてはこんな感じ。

バックアップ対象側で「backup-folder」ディレクトリを作ってNFSマウント
# mkdir /backup-folder
# mount -t nfs XXX.YYY.ZZZ.AAA :\hokansaki-folder /backup-folder

ディスクパーティションの復元
# sfdisk パーティション < ディスクパーティションのバックアップファイル

物理ボリュームを作成
# pvcreate --uuid <uuid> --restorefile ボリューム情報(vgcfgbackup)のバックアップファイル
# pvdisplay

ボリュームグループの作成
# vgcfgrestore -f 構成情報(vgcfgbackup)のバックアップファイル vg
# vgdisplay

論理ボリュームの状態をアクティブに変更
# vgchange -ay vg
# lvdisplay

各パーティションを作成
ファイルタイプ「ext4」の場合
# mkfs.ext4 パーティション
# tune2fs -U uuid パーティション
 ※uuidはバックアップ時にblkidで取得したもの。

ファイルタイプ「vfat」の場合
# mkfs/vfat パーティション
# mkdosfs -i uuid パーティション
 ※uuidはバックアップ時にblkidで取得したもの。

swap領域を作成
# mkswap -U <uuid> パーティション
 ※uuidはバックアップ時にblkidで取得したもの。

ルートディレクトリのリストア
# mkdir /restore-folder
# mount パーティション /restore-folder
# zcat バックアップファイル.dump.gz | restore rf -

各パーティションをマウントディレクトへマウント(ディレクトリが存在しない場合はmkdirコマンド作成)
# mount パーティション マウントディレクトリ

各バックアップファイルを各マウントディレクトリへリストア
ファイルタイプ「ext4」の場合
# cd 各ディレクトリ
# zcat バックアップファイル.dump.gz | restore rf -

ファイルタイプ「xfs」の場合
# cd 各ディレクトリ
# zcat バックアップファイル.dump.gz | xfsrestore rf -

ファイルタイプ「vfat」の場合
# cd 各ディレクトリ
# tar zxvf バックアップファイル.tar.gz ./

ルートディレクトリを変更
# chroot /restore-folder

NFSマウントを解除
# umount /backup-folder

 

感想

時間的にも作業量的にも非常にめんどくさかったですが、ファイルタイプに応じたパーティションの作成方法など、LPICで勉強したことがやっと生かすことができたかなと。。

 

ちなみに、リストアした後最後に「efibootmgr」コマンドで新たな起動順を再登録する必要があるので注意が必要。ここでミスると再起動したときにすべて吹っ飛びます笑。そこまで書く気力がなかったので、以下で参考記事のリンクを貼ってます。ご参考までに。

kledgeb.blogspot.com