RedHatLinux8でのxfsdumpを使ったRDXへのフルバックアップ とリストア - 株式会社CoLabMix

RedHatLinux8でのxfsdumpを使ったRDXへのフルバックアップ とリストア

前回、RDXのRedHatLinuxでのフォーマットを行いました。

 

今回はこちらにRedHatLinux8でのxfsdumpのフルバックアップとリストアの検証をしてみます。

LVMのファイルシステムでのバックアップと復旧をしてみます。

まず前提としてファイルシステムは以下のようになっています。

こちらにswapのファイルシステムがあります。

 

バックアップが必要な領域は以下の3つです。(swapは構成情報だけ必要でバックアップは必要ありません。)

  • /bootの「/dev/sda1」
  • /の「/dev/mapper/rhel-root」
  • /homeの「/dev/mapper/rhel-home」

こちらはパーテション構成によって変わります。

今回はこちらのフルバックアップを行います。

前提として「/mnt/rdx」に十分な量のRDXでのDiskをマウントしています。

また、「xfsdump」が必要になりますので無い場合は以下でインストールが必要です。

 

 

フルバックアップと情報の保存

まず、disk構成を確認するために以下の確認と保存を行います。

 

以下の部分が重要になります。

こちらを控えてきます。

UUIDの保存を行います。

 

次にLVMの情報を保存します。

 

最後にバックアップ必要な領域のバックアップを行います。

 

バックアップ実施のログとしては以下のように出ます。

こちらでシステムのバックアップは完了です。

 

バックアップデータのリストア

今回はDiskが壊れた想定でデータのリストアを行います。

実際には起動に必要なファイルなどが壊れただけの場合はパーテション情報やLVMの情報は保存されています。

まずメディアなどからBootしてレスキューモードに入ります。

メディアからの起動では起動時に「Troubleshooting」を選択し、「Rescue a Red Hat Enterprise Linux system」をクリックすることでレスキューモードに入れます。

既存のDiskをマウントするか選択できますので、3番の「Skip to shell」を選択してマウントをせずに起動を行います。

 

起動後にRDX装置をマウントし「/mnt/rdx」としてマウントしています。

 

次にfdiskでパーテションの作成を行います。(完全にパーティション情報残っていればパーティションの作成を飛ばしても構いません)

少し長いですが、最後の状態が上の方のパーティションと一緒になるようにします。

最後に「w」で構成情報を保存して終了します。

 

次にLVMの情報を確認します。

こちらで構成情報がないことを確認します。もしあれば「pvremove」「vgremove」「lvremove」などのコマンドで削除してしまいます。(完全に構成情報残っていれば構成情報の復旧の手順を飛ばしても構いません。)

そして、LVMの情報の復旧を行います。

UUIDなど控えておく必要ありますが、「/mnt/rdx/lvm_cfg.txt」の中にもありますので、「more /mnt/rdx/lvm_cfg.txt」などでその場で確認しても大丈夫です。

 

LVMの構成情報が復帰したので以下のコマンドでファイルシステムの作成を行います。

UUIDは「/mnt/rdx/blkid.txt」に記載ありますので「more /mnt/rdx/blkid.txt」などでその場で確認しても大丈夫です。

そして、最後にバックアップデータからの復旧を行います。

 

こちらでデータの復旧が完了となります。

再起動をすれば無事システムが起動されているはずです。

あまり実施したくないオペレーションではありますがOS標準の機能だけで、もしもの際に備えておくことができます。

 

 

このブログは株式会社CoLabMixによる技術ブログです。

GCP、AWSなどでのインフラ構築・運用や、クローリング・分析・検索などを主体とした開発を行なっています。

Ruby on RailsやDjango、Pythonなどの開発依頼などお気軽にお声がけください。

開発パートナーを増やしたいという企業と積極的に繋がっていきたいです。

お問い合わせやご依頼・ご相談など

     

     

    関連記事

    1. さくらVPS の CentOS7 サーバに Elasticsearch…

    2. Elasticsearch 6 を使ったデータ検証 その3(bulkで…

    3. CentOS8にTripwireのインストール

    4. DockerでRails5.2の環境を構築する その2

    5. Django2.1.1 を使ってログインを実装する

    6. Elasticsearchでエイリアスの作成

    最近の記事

    制作実績一覧

    ITシステム開発の開発先・発注先の選び方を見つけるコンシェルジュサービス

    ITシステム開発の開発先・発注先の選び方を見つけるコンシェルジュサービス

    ITクリエイターのための転職・仕事情報サイト

    ITクリエイターのための転職・仕事情報サイト

    SNS分析での転職支援

    SNS分析での転職支援

    受託パートナーのマッチングとSES人材のマッチング

    受託パートナーのマッチングとSES人材のマッチング