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
影響を受ける VM を停止または割り当て解除します。
マネージド ディスクを使用して、同じ世代の同じ OS バージョンの復旧 VM を同じリソース グループと場所に作成します。
Azure portal を使用して、影響を受ける仮想マシンの OS ディスクのスナップショットを取得します。
OS ディスクのスナップショットからディスクを作成し、復旧 VM にアタッチします。
ディスクが作成されたら、復旧 VM の chroot 環境のトラブルシューティングを行います。
次のコマンドを使用して、ルート ユーザーとして VM にアクセスします。
sudo su -
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
次のコマンドを使用して、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
chroot 環境のトラブルシューティングを行います。
次のコマンドを使用して、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
)。
復旧 VM からディスクをデタッチし、元の VM でディスク スワップを実行します。
元の VM を起動し、接続を確認します。
RHEL/Centos/Oracle 6.x および Oracle 8.x、RHEL/Centos 7.x と未フォーマット パーティション
影響を受ける VM を停止または割り当て解除します。
マネージド ディスクを使用して、同じリソース グループ (RSG) と場所に同じ OS バージョンの復旧 VM イメージを作成します。
Azure portal を使用して、影響を受ける仮想マシンの OS ディスクのスナップショットを取得します。
OS ディスクのスナップショットからディスクを作成し、復旧 VM にアタッチします。
ディスクが作成されたら、復旧 VM の chroot 環境のトラブルシューティングを行います。
次のコマンドを使用して、ルート ユーザーとして VM にアクセスします。
sudo su -
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
次のコマンドを使用して、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
chroot 環境のトラブルシューティングを行います。
次のコマンドを使用して、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
)。
復旧 VM からディスクをデタッチし、元の VM でディスク スワップを実行します。
元の VM を起動し、接続を確認します。
RHEL/Centos 7.x および 8.X と LVM
Note
元の VM に OS ディスク上に論理ボリューム マネージャー (LVM) が含まれている場合は、OS ディスク上の未加工パーティションを含むイメージを使用して復旧 VM を作成します。
影響を受ける VM を停止または割り当て解除します。
マネージド ディスクを使用して、同じリソース グループ (RSG) と場所に同じ OS バージョンの復旧 VM イメージを作成します。
Azure portal を使用して、影響を受ける仮想マシンの OS ディスクのスナップショットを取得します。
OS ディスクのスナップショットからディスクを作成し、復旧 VM にアタッチします。
ディスクが作成されたら、復旧 VM の chroot 環境のトラブルシューティングを行います。
次のコマンドを使用して、ルート ユーザーとして VM にアクセスします。
sudo su -
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
論理ボリューム グループをアクティブにするには、次のコマンドを使用します。
vgscan --mknodes vgchange -ay lvscan
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
次のコマンドを使用して、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
コマンドが失敗することがあります。 この場合は、このコマンドをバイパスできます。次のコマンドを使用して、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
chroot 環境のトラブルシューティングを行います。
次のコマンドを使用して、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
)。
復旧 VM からディスクをデタッチし、元の VM でディスク スワップを実行します。
元の VM を起動し、接続を確認します。
同じ LVM イメージの使用
Note
同じ LVM イメージを使用して復旧 VM をデプロイする必要がある場合は、LVM を使用して復旧 VM のいくつかの側面を変更する必要があります。
次のコマンドは、復旧操作用に一時的に作成された復旧/復旧 VM で実行されます。
次のコマンドを使用して、復旧するディスクを接続する前にディスクの状態を確認します。
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
データ ドライブとして復旧するディスクを接続します。
次のコマンドを使用して、ディスクをもう一度確認します。
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 構造がすぐには表示されません。
次のコマンドを使用して、物理 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
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
次のコマンドを使用して、名前の変更を確認します。
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
次のコマンドを使用して、復旧 VM の rootvg の名前を変更します。
sudo vgrename rootvg oldvg
Volume group "rootvg" successfully renamed to "oldvg"
次のコマンドを使用して、ディスクを確認します。
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
データ ドライブから取得したファイル システムをマウントします。
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 は現在使用中のオペレーティング システムを表し、無視する必要があります。次のコマンドを使用してマウントを確認します。
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
次のコマンドを使用して chroot を使用します。
sudo chroot /rescue/
次のコマンドを使用して、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は/にマウントされています。
次のコマンドを使用して、ボリューム グループ (VG) の名前を変更して一貫性を維持します。 VG の名前を変更すると、initrd を再生成し、元の VM でディスクをもう一度起動するときに問題が発生しないようにします。
sudo vgrename rescuemevg rootvg
Volume group "rescuemevg" successfully renamed to "rootvg"
次のコマンドを使用して、変更を確認します。
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 /
OS を復旧するために必要なアクティビティに進みます。 これらのアクティビティには、initramfs または GRUB 構成の再生成が含まれる場合があります。
次のコマンドを使用して、chroot 環境を終了します。
sudo exit
次のコマンドを使用して、復旧 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
元の VM を起動し、その機能を確認します。
Oracle 7.x
影響を受ける VM を停止または割り当て解除します。
マネージド ディスクを使用して、同じ OS バージョンの復旧 VM イメージを同じリソース グループ (RSG) と場所に作成します。
Azure portal を使用して、影響を受ける仮想マシンの OS ディスクのスナップショットを取得します。
OS ディスクのスナップショットからディスクを作成し、復旧 VM にアタッチします。
ディスクが作成されたら、復旧 VM の chroot 環境のトラブルシューティングを行います。
次のコマンドを使用して、ルート ユーザーとして VM にアクセスします。
sudo su -
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
次のコマンドを使用して、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
chroot 環境のトラブルシューティングを行います。
次のコマンドを使用して、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
)。
復旧 VM からディスクをデタッチし、元の VM でディスク スワップを実行します。
元の VM を起動し、接続を確認します。
SUSE-SLES 12 SP4、SUSE-SLES 12 SP4 For SAP、SUSE-SLES 15 SP1、SUSE-SLES 15 SP1 For SAP
影響を受ける VM を停止または割り当て解除します。
マネージド ディスクを使用して、同じ OS バージョンの復旧 VM イメージを同じリソース グループ (RSG) と場所に作成します。
Azure portal を使用して、影響を受ける仮想マシンの OS ディスクのスナップショットを取得します。
OS ディスクのスナップショットからディスクを作成し、復旧 VM にアタッチします。
ディスクが作成されたら、復旧 VM の chroot 環境のトラブルシューティングを行います。
次のコマンドを使用し、ルート ユーザーとして VM にアクセスします。
sudo su -
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
次のコマンドを使用して、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
chroot 環境のトラブルシューティングを行います。
次のコマンドを使用して、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
)。
復旧 VM からディスクをデタッチし、元の VM でディスク スワップを実行します。
元の VM を起動し、接続を確認します。
次のステップ
お問い合わせはこちらから
質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。