Linux 復旧 VM の Chroot 環境

適用対象: ✔️ Linux VM

Note

この記事で参照されている CentOS は Linux ディストリビューションであり、EOL (End Of Life) に到達します。 適宜、使用と計画を検討してください。 詳細については、「 CentOS End Of Life ガイダンスを参照してください。

この記事では、Linux の復旧仮想マシン (VM) で chroot 環境のトラブルシューティングを行う方法について説明します。

Ubuntu 16.x & Ubuntu 18.x & Ubuntu 20.04

  1. 影響を受ける VM を停止または割り当て解除します。

  2. マネージド ディスクを使用して、同じ世代の同じ OS バージョンの復旧 VM を同じリソース グループと場所に作成します。

  3. Azure portal を使用して、影響を受ける仮想マシンの OS ディスクのスナップショットを取得します。

  4. OS ディスクのスナップショットからディスクを作成し、復旧 VM にアタッチします。

  5. ディスクが作成されたら、復旧 VM の chroot 環境のトラブルシューティングを行います。

    1. 次のコマンドを使用して、ルート ユーザーとして VM にアクセスします。

      sudo su -

    2. dmesg を使用してディスクを探します (別の方法を使用して新しいディスクを検出してもかまいません)。 次の例では、 dmesg を使用して Small Computer Systems Interface (SCSI) ディスクをフィルター処理します。

      dmesg | grep SCSI

      コマンドの出力は、次の例のようになります。 この例では、 /dev/sdc ディスクが必要です。

      [    0.294784] SCSI subsystem initialized
      [    0.573458] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
      [    7.110271] sd 2:0:0:0: [sda] Attached SCSI disk
      [    8.079653] sd 3:0:1:0: [sdb] Attached SCSI disk
      [ 1828.162306] sd 5:0:0:0: [sdc] Attached SCSI disk
      
    3. 次のコマンドを使用して、chroot 環境にアクセスします。

      mkdir /rescue
      mount /dev/sdc1 /rescue
      mount /dev/sdc15 /rescue/boot/efi
      
      mount -t proc /proc /rescue/proc
      mount -t sysfs /sys /rescue/sys
      mount -o bind /dev /rescue/dev
      mount -o bind /dev/pts /rescue/dev/pts
      mount -o bind /run /rescue/run
      chroot /rescue
      
    4. chroot 環境のトラブルシューティングを行います。

    5. 次のコマンドを使用して、chroot 環境を終了します。

      exit
      
      umount /rescue/proc/
      umount /rescue/sys/
      umount /rescue/dev/pts
      umount /rescue/dev/
      umount /rescue/run
      cd /
      umount /rescue/boot/efi
      umount /rescue
      

      Note

      "/rescue のマウントを解除できません" というエラー メッセージが表示された場合は、 -l オプションを umount コマンドに追加します (例: umount -l /rescue)。

  6. 復旧 VM からディスクをデタッチし、元の VM でディスク スワップを実行します。

  7. 元の VM を起動し、接続を確認します。

RHEL/Centos/Oracle 6.x および Oracle 8.x、RHEL/Centos 7.x と未フォーマット パーティション

  1. 影響を受ける VM を停止または割り当て解除します。

  2. マネージド ディスクを使用して、同じリソース グループ (RSG) と場所に同じ OS バージョンの復旧 VM イメージを作成します。

  3. Azure portal を使用して、影響を受ける仮想マシンの OS ディスクのスナップショットを取得します。

  4. OS ディスクのスナップショットからディスクを作成し、復旧 VM にアタッチします。

  5. ディスクが作成されたら、復旧 VM の chroot 環境のトラブルシューティングを行います。

    1. 次のコマンドを使用して、ルート ユーザーとして VM にアクセスします。

      sudo su -

    2. dmesg を使用してディスクを探します (別の方法を使用して新しいディスクを検出してもかまいません)。 次の例では、 dmesg を使用して SCSI ディスクをフィルター処理します。

      dmesg | grep SCSI

      コマンドの出力は、次の例のようになります。 この例では、 /dev/sdc ディスクが必要です。

      [    0.294784] SCSI subsystem initialized
      [    0.573458] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
      [    7.110271] sd 2:0:0:0: [sda] Attached SCSI disk
      [    8.079653] sd 3:0:1:0: [sdb] Attached SCSI disk
      [ 1828.162306] sd 5:0:0:0: [sdc] Attached SCSI disk
      
    3. 次のコマンドを使用して、chroot 環境にアクセスします。

      mkdir /rescue
      mount -o nouuid /dev/sdc2 /rescue
      mount -o nouuid /dev/sdc1 /rescue/boot/
      
      mount -t proc /proc /rescue/proc
      mount -t sysfs /sys /rescue/sys
      mount -o bind /dev /rescue/dev
      mount -o bind /dev/pts /rescue/dev/pts
      mount -o bind /run /rescue/run
      chroot /rescue
      
    4. chroot 環境のトラブルシューティングを行います。

    5. 次のコマンドを使用して、chroot 環境を終了します。

      exit
      
      umount /rescue/proc/
      umount /rescue/sys/
      umount /rescue/dev/pts
      umount /rescue/dev/
      umount /rescue/run
      cd /
      umount /rescue/boot/
      umount /rescue
      

      Note

      "/rescue のマウントを解除できません" というエラー メッセージが表示された場合は、 -l オプションを umount コマンドに追加します (例: umount -l /rescue)。

  6. 復旧 VM からディスクをデタッチし、元の VM でディスク スワップを実行します。

  7. 元の VM を起動し、接続を確認します。

RHEL/Centos 7.x および 8.X と LVM

Note

元の VM に OS ディスク上に論理ボリューム マネージャー (LVM) が含まれている場合は、OS ディスク上の未加工パーティションを含むイメージを使用して復旧 VM を作成します。

  1. 影響を受ける VM を停止または割り当て解除します。

  2. マネージド ディスクを使用して、同じリソース グループ (RSG) と場所に同じ OS バージョンの復旧 VM イメージを作成します。

  3. Azure portal を使用して、影響を受ける仮想マシンの OS ディスクのスナップショットを取得します。

  4. OS ディスクのスナップショットからディスクを作成し、復旧 VM にアタッチします。

  5. ディスクが作成されたら、復旧 VM の chroot 環境のトラブルシューティングを行います。

    1. 次のコマンドを使用して、ルート ユーザーとして VM にアクセスします。

      sudo su -

    2. dmesg を使用してディスクを探します (別の方法を使用して新しいディスクを検出してもかまいません)。 次の例では、 dmesg を使用して SCSI ディスクをフィルター処理します。

      dmesg | grep SCSI

      コマンドの出力は、次の例のようになります。 この例では、 /dev/sdc ディスクが必要です。

      [    0.294784] SCSI subsystem initialized
      [    0.573458] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
      [    7.110271] sd 2:0:0:0: [sda] Attached SCSI disk
      [    8.079653] sd 3:0:1:0: [sdb] Attached SCSI disk
      [ 1828.162306] sd 5:0:0:0: [sdc] Attached SCSI disk
      
    3. 論理ボリューム グループをアクティブにするには、次のコマンドを使用します。

      vgscan --mknodes
      vgchange -ay
      lvscan
      
    4. lsblk コマンドを使用して LVM 名を取得します。

      lsblk
      
      NAME              MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
      sda                 8:0    0   64G  0 disk
      ├─sda1              8:1    0  500M  0 part /boot
      ├─sda2              8:2    0   63G  0 part /
      sdb                 8:16   0    4G  0 disk
      └─sdb1              8:17   0    4G  0 part /mnt/resource
      sdc                 8:0    0   64G  0 disk
      ├─sdc1              8:1    0  500M  0 part
      ├─sdc2              8:2    0   63G  0 part
      ├─sdc3              8:3    0    2M  0 part
      ├─sdc4              8:4    0   63G  0 part
        ├─rootvg-tmplv  253:0    0    2G  0 lvm  
        ├─rootvg-usrlv  253:1    0   10G  0 lvm  
        ├─rootvg-optlv  253:2    0    2G  0 lvm  
        ├─rootvg-homelv 253:3    0    1G  0 lvm  
        ├─rootvg-varlv  253:4    0    8G  0 lvm  
        └─rootvg-rootlv 253:5    0    2G  0 lvm
      
    5. 次のコマンドを使用して、chroot ディレクトリを準備します。

      mkdir /rescue
      mount /dev/mapper/rootvg-rootlv /rescue
      mount /dev/mapper/rootvg-varlv /rescue/var
      mount /dev/mapper/rootvg-homelv /rescue/home
      mount /dev/mapper/rootvg-usrlv /rescue/usr
      mount /dev/mapper/rootvg-tmplv /rescue/tmp
      mount /dev/mapper/rootvg-optlv /rescue/opt
      mount /dev/sdc2 /rescue/boot/
      mount /dev/sdc1 /rescue/boot/efi
      

      /rescue/boot/ および /rescue/boot/efi パーティションは、常に /dev/sdc2 または /dev/sdc1 に配置されるとは限りません。 これらのパーティションのマウント中にエラーが発生した場合は、 /rescue/etc/fstab ファイルを調べて、破損した OS ディスクから /ブート および /boot/efi パーティションの正しいデバイスを特定します。 次に、 blkid コマンドを実行し、 /rescue/etc/fstab ファイルのユニバーサル一意識別子 (UUID) を blkid コマンドの出力と比較して、修復 VM に /rescue/boot//rescue/boot/efi をマウントするための適切なデバイスを決定します。

      rootvg-optlv ボリューム グループが存在しない場合、mount /dev/mapper/rootvg-optlv /rescue/opt コマンドが失敗することがあります。 この場合は、このコマンドをバイパスできます。

    6. 次のコマンドを使用して、chroot 環境にアクセスします。

      mount -t proc /proc /rescue/proc
      mount -t sysfs /sys /rescue/sys
      mount -o bind /dev /rescue/dev
      mount -o bind /dev/pts /rescue/dev/pts
      mount -o bind /run /rescue/run
      chroot /rescue
      
    7. chroot 環境のトラブルシューティングを行います。

    8. 次のコマンドを使用して、chroot 環境を終了します。

      exit
      
      umount /rescue/proc/
      umount /rescue/sys/
      umount /rescue/dev/pts
      umount /rescue/dev/
      umount /rescue/run
      cd /
      umount /rescue/boot/efi
      umount /rescue/boot
      umount /rescue/home
      umount /rescue/var
      umount /rescue/usr
      umount /rescue/tmp
      umount /rescue/opt
      umount /rescue
      

      Note

      "/rescue のマウントを解除できません" というエラー メッセージが表示された場合は、 -l オプションを umount コマンドに追加します (例: umount -l /rescue)。

  6. 復旧 VM からディスクをデタッチし、元の VM でディスク スワップを実行します。

  7. 元の VM を起動し、接続を確認します。

同じ LVM イメージの使用

Note

同じ LVM イメージを使用して復旧 VM をデプロイする必要がある場合は、LVM を使用して復旧 VM のいくつかの側面を変更する必要があります。

次のコマンドは、復旧操作用に一時的に作成された復旧/復旧 VM で実行されます。

  1. 次のコマンドを使用して、復旧するディスクを接続する前にディスクの状態を確認します。

    sudo lsblk -f
    
    NAME              FSTYPE      LABEL UUID                                   MOUNTPOINT
    sda
    ├─sda1            vfat              93DA-8C20                              /boot/efi
    ├─sda2            xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d   /boot
    ├─sda3
    └─sda4            LVM2_member       pdSI2Q-ZEzV-oT6P-R2JG-ZW3h-cmnf-iRN6pU
    ├─rootvg-tmplv  xfs               9098eb05-0176-4997-8132-9152a7bef207   /tmp
    ├─rootvg-usrlv  xfs               2f9ff36c-742d-4914-b463-d4152801b95d   /usr
    ├─rootvg-optlv  xfs               aeacea8e-3663-4569-af25-c52357f8a0a3   /opt
    ├─rootvg-homelv xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0   /home
    ├─rootvg-varlv  xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86   /var
    └─rootvg-rootlv xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809   /
    sdb
    └─sdb1            ext4              e72e7c2c-db27-4a73-a97e-01d63d21ccf8   /mnt
    
  2. データ ドライブとして復旧するディスクを接続します。

  3. 次のコマンドを使用して、ディスクをもう一度確認します。

    sudo lsblk -f
    
    NAME              FSTYPE      LABEL UUID                                   MOUNTPOINT
    sda
    ├─sda1            vfat              93DA-8C20                              /boot/efi
    ├─sda2            xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d   /boot
    ├─sda3
    └─sda4            LVM2_member       pdSI2Q-ZEzV-oT6P-R2JG-ZW3h-cmnf-iRN6pU
    ├─rootvg-tmplv  xfs               9098eb05-0176-4997-8132-9152a7bef207   /tmp
    ├─rootvg-usrlv  xfs               2f9ff36c-742d-4914-b463-d4152801b95d   /usr
    ├─rootvg-optlv  xfs               aeacea8e-3663-4569-af25-c52357f8a0a3   /opt
    ├─rootvg-homelv xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0   /home
    ├─rootvg-varlv  xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86   /var
    └─rootvg-rootlv xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809   /
    sdb
    └─sdb1            ext4              e72e7c2c-db27-4a73-a97e-01d63d21ccf8   /mnt
    sdc
    ├─sdc1            vfat              93DA-8C20
    ├─sdc2            xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d
    ├─sdc3
    └─sdc4            LVM2_member       pdSI2Q-ZEzV-oT6P-R2JG-ZW3h-cmnf-iRN6pU
    

    コマンド出力に LVM 構造がすぐには表示されません。

  4. 次のコマンドを使用して、物理 LVM パーティションを表示します。

    sudo pvs
    

    この出力には、重複した物理ボリューム (PV) に関する警告が表示されます。

    WARNING: Not using lvmetad because duplicate PVs were found.
    WARNING: Use multipath or vgimportclone to resolve duplicate PVs?
    WARNING: After duplicates are resolved, run "pvscan --cache" to enable lvmetad.
    WARNING: Not using device /dev/sdc4 for PV pdSI2Q-ZEzV-oT6P-R2JG-ZW3h-cmnf-iRN6pU.
    WARNING: PV pdSI2Q-ZEzV-oT6P-R2JG-ZW3h-cmnf-iRN6pU prefers device /dev/sda4 because device is used by LV.
    PV         VG     Fmt  Attr PSize   PFree
    /dev/sda4  rootvg lvm2 a--  <63.02g <38.02g
    
  5. vmimportclone コマンドを使用して、別の名前を使用してデータ ドライブからrootvgをインポートします。

    このコマンドは PV の UUID を変更し、またそれをアクティブにします:

    sudo vgimportclone -n rescuemevg /dev/sdc4
    
    WARNING: Not using device /dev/sdc4 for PV <PV>.
    WARNING: PV pdSI2Q-ZEzV-oT6P-R2JG-ZW3h-cmnf-iRN6pU prefers device /dev/sda4 because device is used by LV.
    
    sudo vgchange -a y rescuemevg 
    
    6 logical volume(s) in volume group "rescuemevg" now active
    
  6. 次のコマンドを使用して、名前の変更を確認します。

    sudo lsblk -f
    
    NAME                  FSTYPE      LABEL UUID                                   MOUNTPOINT
    sda
    ├─sda1                vfat              93DA-8C20                              /boot/efi
    ├─sda2                xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d   /boot
    ├─sda3
    └─sda4                LVM2_member       pdSI2Q-ZEzV-oT6P-R2JG-ZW3h-cmnf-iRN6pU
    ├─rootvg-tmplv      xfs               9098eb05-0176-4997-8132-9152a7bef207   /tmp
    ├─rootvg-usrlv      xfs               2f9ff36c-742d-4914-b463-d4152801b95d   /usr
    ├─rootvg-optlv      xfs               aeacea8e-3663-4569-af25-c52357f8a0a3   /opt
    ├─rootvg-homelv     xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0   /home
    ├─rootvg-varlv      xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86   /var
    └─rootvg-rootlv     xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809   /
    sdb
    └─sdb1                ext4              e72e7c2c-db27-4a73-a97e-01d63d21ccf8   /mnt
    sdc
    ├─sdc1                vfat              93DA-8C20
    ├─sdc2                xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d
    ├─sdc3
    └─sdc4                LVM2_member       BbZsAT-5oOK-nITn-bHFW-IVyS-y0O3-93oDes
    ├─rescuemevg-tmplv  xfs               9098eb05-0176-4997-8132-9152a7bef207
    ├─rescuemevg-usrlv  xfs               2f9ff36c-742d-4914-b463-d4152801b95d
    ├─rescuemevg-optlv  xfs               aeacea8e-3663-4569-af25-c52357f8a0a3
    ├─rescuemevg-homelv xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0
    ├─rescuemevg-varlv  xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86
    └─rescuemevg-rootlv xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809
    
  7. 次のコマンドを使用して、復旧 VM の rootvg の名前を変更します。

    sudo vgrename rootvg oldvg
    
    Volume group "rootvg" successfully renamed to "oldvg"
    
  8. 次のコマンドを使用して、ディスクを確認します。

    sudo lsblk -f
    
    NAME                  FSTYPE      LABEL UUID                                   MOUNTPOINT
    sda
    ├─sda1                vfat              93DA-8C20                              /boot/efi
    ├─sda2                xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d   /boot
    ├─sda3
    └─sda4                LVM2_member       pdSI2Q-ZEzV-oT6P-R2JG-ZW3h-cmnf-iRN6pU
    ├─oldvg-tmplv       xfs               9098eb05-0176-4997-8132-9152a7bef207   /tmp
    ├─oldvg-usrlv       xfs               2f9ff36c-742d-4914-b463-d4152801b95d   /usr
    ├─oldvg-optlv       xfs               aeacea8e-3663-4569-af25-c52357f8a0a3   /opt
    ├─oldvg-homelv      xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0   /home
    ├─oldvg-varlv       xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86   /var
    └─oldvg-rootlv      xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809   /
    sdb
    └─sdb1                ext4              e72e7c2c-db27-4a73-a97e-01d63d21ccf8   /mnt
    sdc
    ├─sdc1                vfat              93DA-8C20
    ├─sdc2                xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d
    ├─sdc3
    └─sdc4                LVM2_member       BbZsAT-5oOK-nITn-bHFW-IVyS-y0O3-93oDes
    ├─rescuemevg-tmplv  xfs               9098eb05-0176-4997-8132-9152a7bef207
    ├─rescuemevg-usrlv  xfs               2f9ff36c-742d-4914-b463-d4152801b95d
    ├─rescuemevg-optlv  xfs               aeacea8e-3663-4569-af25-c52357f8a0a3
    ├─rescuemevg-homelv xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0
    ├─rescuemevg-varlv  xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86
    └─rescuemevg-rootlv xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809
    
  9. データ ドライブから取得したファイル システムをマウントします。

    xfsを使用する場合は、-o nouuid オプションを指定して UUID との競合を回避し、chroot を実行するために必要なファイル システムをマウントします。 このオプションは ext4 ファイル システムでは使用できないため、このようなシナリオではコマンドから削除する必要があります。

    sudo mkdir /rescue
    sudo mount -o nouuid /dev/mapper/rescuemevg-rootlv /rescue
    sudo mount -o nouuid  /dev/mapper/rescuemevg-homelv /rescue/home
    sudo mount -o nouuid  /dev/mapper/rescuemevg-optlv /rescue/opt 
    sudo mount -o nouuid  /dev/mapper/rescuemevg-tmplv /rescue/tmp 
    sudo mount -o nouuid  /dev/mapper/rescuemevg-usrlv /rescue/usr 
    sudo mount -o nouuid  /dev/mapper/rescuemevg-varlv /rescue/var 
    sudo mount -o nouuid  /dev/sdc2 /rescue/boot
    sudo mount /dev/sdc1 /rescue/boot/efi
    
    sudo mount -t proc /proc /rescue/proc 
    sudo mount -t sysfs /sys /rescue/sys
    sudo mount -o bind /dev /rescue/dev 
    sudo mount -o bind /dev/pts /rescue/dev/pts
    sudo mount -o bind /run /rescue/run
    

    /rescue/boot/ および /rescue/boot/efi パーティションは、常に /dev/sdc2 または /dev/sdc1 に配置されるとは限りません。 これらのパーティションのマウント中にエラーが発生した場合は、 /rescue/etc/fstab ファイルを調べて、破損した OS ディスクから /ブート および /boot/efi パーティションの正しいデバイスを特定します。 次に、 blkid コマンドを実行し、 /rescue/etc/fstab ファイルの UUID を blkid コマンドの出力と比較して、修復 VM に /rescue/boot//rescue/boot/efi をマウントするための適切なデバイスを決定します。 重複した UUID が出力に表示される場合があります。 このシナリオでは、手順 5 のデバイス文字に一致するパーティションをマウントします。 このセクションの例では、マウントする必要がある正しいパーティションは /dev/sdc です。 dev/sda は現在使用中のオペレーティング システムを表し、無視する必要があります。

  10. 次のコマンドを使用してマウントを確認します。

    sudo lsblk -f
    
    NAME                  FSTYPE      LABEL UUID                                   MOUNTPOINT
    sda
    ├─sda1                vfat              93DA-8C20                              /boot/efi
    ├─sda2                xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d   /boot
    ├─sda3
    └─sda4                LVM2_member       pdSI2Q-ZEzV-oT6P-R2JG-ZW3h-cmnf-iRN6pU
    ├─oldvg-tmplv       xfs               9098eb05-0176-4997-8132-9152a7bef207   /tmp
    ├─oldvg-usrlv       xfs               2f9ff36c-742d-4914-b463-d4152801b95d   /usr
    ├─oldvg-optlv       xfs               aeacea8e-3663-4569-af25-c52357f8a0a3   /opt
    ├─oldvg-homelv      xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0   /home
    ├─oldvg-varlv       xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86   /var
    └─oldvg-rootlv      xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809   /
    sdb
    └─sdb1                ext4              e72e7c2c-db27-4a73-a97e-01d63d21ccf8   /mnt
    sdc
    ├─sdc1                vfat              93DA-8C20                              /rescue/boot/efi
    ├─sdc2                xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d   /rescue/boot
    ├─sdc3
    └─sdc4                LVM2_member       BbZsAT-5oOK-nITn-bHFW-IVyS-y0O3-93oDes
    ├─rescuemevg-tmplv  xfs               9098eb05-0176-4997-8132-9152a7bef207   /rescue/tmp
    ├─rescuemevg-usrlv  xfs               2f9ff36c-742d-4914-b463-d4152801b95d   /rescue/usr
    ├─rescuemevg-optlv  xfs               aeacea8e-3663-4569-af25-c52357f8a0a3   /rescue/opt
    ├─rescuemevg-homelv xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0   /rescue/home
    ├─rescuemevg-varlv  xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86   /rescue/var
    └─rescuemevg-rootlv xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809   /rescue
    
  11. 次のコマンドを使用して chroot を使用します。

    sudo chroot /rescue/
    
  12. 次のコマンドを使用して、chroot 環境内のマウントを確認します。

    sudo lsblk -f
    
    NAME                  FSTYPE      LABEL UUID                                   MOUNTPOINT
    sda
    ├─sda1                vfat              93DA-8C20
    ├─sda2                xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d
    ├─sda3
    └─sda4                LVM2_member       pdSI2Q-ZEzV-oT6P-R2JG-ZW3h-cmnf-iRN6pU
    ├─oldvg-tmplv       xfs               9098eb05-0176-4997-8132-9152a7bef207
    ├─oldvg-usrlv       xfs               2f9ff36c-742d-4914-b463-d4152801b95d
    ├─oldvg-optlv       xfs               aeacea8e-3663-4569-af25-c52357f8a0a3
    ├─oldvg-homelv      xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0
    ├─oldvg-varlv       xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86
    └─oldvg-rootlv      xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809
    sdb
    └─sdb1                ext4              e72e7c2c-db27-4a73-a97e-01d63d21ccf8
    sdc
    ├─sdc1                vfat              93DA-8C20                              /boot/efi
    ├─sdc2                xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d   /boot
    ├─sdc3
    └─sdc4                LVM2_member       BbZsAT-5oOK-nITn-bHFW-IVyS-y0O3-93oDes
    ├─rescuemevg-tmplv  xfs               9098eb05-0176-4997-8132-9152a7bef207   /tmp
    ├─rescuemevg-usrlv  xfs               2f9ff36c-742d-4914-b463-d4152801b95d   /usr
    ├─rescuemevg-optlv  xfs               aeacea8e-3663-4569-af25-c52357f8a0a3   /opt
    ├─rescuemevg-homelv xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0   /home
    ├─rescuemevg-varlv  xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86   /var
    └─rescuemevg-rootlv xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809   /
    

    rescuemevg-rootlv/にマウントされています。

  13. 次のコマンドを使用して、ボリューム グループ (VG) の名前を変更して一貫性を維持します。 VG の名前を変更すると、initrd を再生成し、元の VM でディスクをもう一度起動するときに問題が発生しないようにします。

    sudo vgrename rescuemevg rootvg
    
    Volume group "rescuemevg" successfully renamed to "rootvg"
    
  14. 次のコマンドを使用して、変更を確認します。

    sudo lsblk -f
    
    NAME              FSTYPE      LABEL UUID                                   MOUNTPOINT
    sda
    ├─sda1            vfat              93DA-8C20
    ├─sda2            xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d
    ├─sda3
    └─sda4            LVM2_member       pdSI2Q-ZEzV-oT6P-R2JG-ZW3h-cmnf-iRN6pU
    ├─oldvg-tmplv   xfs               9098eb05-0176-4997-8132-9152a7bef207
    ├─oldvg-usrlv   xfs               2f9ff36c-742d-4914-b463-d4152801b95d
    ├─oldvg-optlv   xfs               aeacea8e-3663-4569-af25-c52357f8a0a3
    ├─oldvg-homelv  xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0
    ├─oldvg-varlv   xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86
    └─oldvg-rootlv  xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809
    sdb
    └─sdb1            ext4              e72e7c2c-db27-4a73-a97e-01d63d21ccf8
    sdc
    ├─sdc1            vfat              93DA-8C20                              /boot/efi
    ├─sdc2            xfs               d5da486e-fdfe-4ad8-bc01-aa72b91fd47d   /boot
    ├─sdc3
    └─sdc4            LVM2_member       BbZsAT-5oOK-nITn-bHFW-IVyS-y0O3-93oDes
    ├─rootvg-tmplv  xfs               9098eb05-0176-4997-8132-9152a7bef207   /tmp
    ├─rootvg-usrlv  xfs               2f9ff36c-742d-4914-b463-d4152801b95d   /usr
    ├─rootvg-optlv  xfs               aeacea8e-3663-4569-af25-c52357f8a0a3   /opt
    ├─rootvg-homelv xfs               a79e43dc-7adc-41b4-b6e1-4e6b033b15c0   /home
    ├─rootvg-varlv  xfs               c7cb68e9-7865-4187-b3bd-e9a869779d86   /var
    └─rootvg-rootlv xfs               d8dc4d62-ada5-4952-a0d9-1bce6cb6f809   /
    
  15. OS を復旧するために必要なアクティビティに進みます。 これらのアクティビティには、initramfs または GRUB 構成の再生成が含まれる場合があります。

  16. 次のコマンドを使用して、chroot 環境を終了します。

    sudo exit
    
  17. 次のコマンドを使用して、復旧 VM からデータ ディスクのマウントを解除してデタッチし、元の VM とのディスク スワップを実行します。

    umount /rescue/run/
    umount /rescue/dev/pts/
    umount /rescue/dev/ 
    umount /rescue/sys/
    umount /rescue/proc
    umount /rescue/boot/efi
    umount /rescue/boot
    umount /rescue/var
    umount /rescue/usr
    umount /rescue/tmp
    umount /rescue/opt
    umount /rescue/home
    umount /rescue
    
  18. 元の VM を起動し、その機能を確認します。

Oracle 7.x

  1. 影響を受ける VM を停止または割り当て解除します。

  2. マネージド ディスクを使用して、同じ OS バージョンの復旧 VM イメージを同じリソース グループ (RSG) と場所に作成します。

  3. Azure portal を使用して、影響を受ける仮想マシンの OS ディスクのスナップショットを取得します。

  4. OS ディスクのスナップショットからディスクを作成し、復旧 VM にアタッチします。

  5. ディスクが作成されたら、復旧 VM の chroot 環境のトラブルシューティングを行います。

    1. 次のコマンドを使用して、ルート ユーザーとして VM にアクセスします。

      sudo su -

    2. dmesgを使用してディスクを見つけます (新しいディスクの検出に使用する方法は異なる場合があります)。 次の例では、 dmesg を使用して SCSI ディスクをフィルター処理します。

      dmesg | grep SCSI

      コマンドの出力は、次の例のようになります。 この例では、 /dev/sdc ディスクが必要です。

      [    0.294784] SCSI subsystem initialized
      [    0.573458] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
      [    7.110271] sd 2:0:0:0: [sda] Attached SCSI disk
      [    8.079653] sd 3:0:1:0: [sdb] Attached SCSI disk
      [ 1828.162306] sd 5:0:0:0: [sdc] Attached SCSI disk
      
    3. 次のコマンドを使用して、chroot 環境にアクセスします。

      mkdir /rescue
      mount -o nouuid /dev/sdc2 /rescue
      mount -o nouuid /dev/sdc1 /rescue/boot/
      mount /dev/sdc15 /rescue/boot/efi
      
      mount -t proc /proc /rescue/proc
      mount -t sysfs /sys /rescue/sys
      mount -o bind /dev /rescue/dev
      mount -o bind /dev/pts /rescue/dev/pts
      mount -o bind /run /rescue/run
      chroot /rescue
      
    4. chroot 環境のトラブルシューティングを行います。

    5. 次のコマンドを使用して、chroot 環境を終了します。

      exit
      
      umount /rescue/proc/
      umount /rescue/sys/
      umount /rescue/dev/pts
      umount /rescue/dev/
      umount /rescue/run
      umount /rescue/boot/efi
      umount /rescue/boot
      umount /rescue
      

      Note

      "/rescue のマウントを解除できません" というエラー メッセージが表示された場合は、 -l オプションを umount コマンドに追加します (例: umount -l /rescue)。

  6. 復旧 VM からディスクをデタッチし、元の VM でディスク スワップを実行します。

  7. 元の VM を起動し、接続を確認します。

SUSE-SLES 12 SP4、SUSE-SLES 12 SP4 For SAP、SUSE-SLES 15 SP1、SUSE-SLES 15 SP1 For SAP

  1. 影響を受ける VM を停止または割り当て解除します。

  2. マネージド ディスクを使用して、同じ OS バージョンの復旧 VM イメージを同じリソース グループ (RSG) と場所に作成します。

  3. Azure portal を使用して、影響を受ける仮想マシンの OS ディスクのスナップショットを取得します。

  4. OS ディスクのスナップショットからディスクを作成し、復旧 VM にアタッチします。

  5. ディスクが作成されたら、復旧 VM の chroot 環境のトラブルシューティングを行います。

    1. 次のコマンドを使用し、ルート ユーザーとして VM にアクセスします。

      sudo su -

    2. dmesg を使用してディスクを探します (別の方法を使用して新しいディスクを検出してもかまいません)。 次の例では、 dmesg を使用して SCSI ディスクをフィルター処理します。

      dmesg | grep SCSI

      コマンドの出力は、次の例のようになります。 この例では、 /dev/sdc ディスクが必要です。

      [    0.294784] SCSI subsystem initialized
      [    0.573458] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
      [    7.110271] sd 2:0:0:0: [sda] Attached SCSI disk
      [    8.079653] sd 3:0:1:0: [sdb] Attached SCSI disk
      [ 1828.162306] sd 5:0:0:0: [sdc] Attached SCSI disk
      
    3. 次のコマンドを使用して、chroot 環境にアクセスします。

      mkdir /rescue
      mount -o nouuid /dev/sdc4 /rescue
      mount -o nouuid /dev/sdc3 /rescue/boot/
      mount /dev/sdc2 /rescue/boot/efi
      
      mount -t proc /proc /rescue/proc
      mount -t sysfs /sys /rescue/sys
      mount -o bind /dev /rescue/dev
      mount -o bind /dev/pts /rescue/dev/pts
      mount -o bind /run /rescue/run
      chroot /rescue
      
    4. chroot 環境のトラブルシューティングを行います。

    5. 次のコマンドを使用して、chroot 環境を終了します。

      exit
      
      umount /rescue/proc/
      umount /rescue/sys/
      umount /rescue/dev/pts
      umount /rescue/dev/
      umount /rescue/run
      umount /rescue/boot/efi
      umount /rescue/boot
      umount /rescue
      

      Note

      "/rescue のマウントを解除できません" というエラー メッセージが表示された場合は、 -l オプションを umount コマンドに追加します (例: umount -l /rescue)。

  6. 復旧 VM からディスクをデタッチし、元の VM でディスク スワップを実行します。

  7. 元の VM を起動し、接続を確認します。

次のステップ

お問い合わせはこちらから

質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。