Linux レスキュー VM の Chroot 環境

注:

この記事で参照されている CentOS は Linux ディストリビューションであり、End Of Life (EOL) に到達します。 使用を検討し、それに応じて計画します。 詳細については、「 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 して、スモール コンピューター システム インターフェイス (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
      

      注:

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

  6. レスキュー VM からディスクをデタッチし、元の VM とのディスク スワップを実行します。

  7. 元の VM を起動し、その接続をチェックします。

RHEL/Centos/Oracle 6.x && Oracle 8.x && RHEL/Centos 7.x と RAW パーティション

  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
      

      注:

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

  6. レスキュー VM からディスクをデタッチし、元の VM とのディスク スワップを実行します。

  7. 元の VM を起動し、その接続をチェックします。

RHEL/Centos 7.x & 8.X と LVM

注:

元の 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 dir を準備するには、次のコマンドを使用します。

      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 パーティションと /boot/efi パーティションの正しいデバイスを判断します。 次に、コマンドをblkid実行し、/rescue/etc/fstab ファイルのユニバーサル一意識別子 (UUID) をコマンドのblkid出力と比較して、修復 VM で /rescue/boot/ と /rescue/boot/efi をマウントするための正しいデバイスを決定します。

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

    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
      

      注:

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

  6. レスキュー VM からディスクをデタッチし、元の VM とのディスク スワップを実行します。

  7. 元の VM を起動し、その接続をチェックします。

同じ LVM イメージの使用

注:

同じ 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 パーティションと /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
      

      注:

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

      注:

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

  6. レスキュー VM からディスクをデタッチし、元の VM とのディスク スワップを実行します。

  7. 元の VM を起動し、その接続をチェックします。

次の手順

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

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