Ambiente Chroot em uma VM de resgate do Linux
Aplica-se a: ✔️ VMs do Linux
Observação
O CentOS mencionado neste artigo é uma distribuição Linux e chegará ao fim da vida útil (EOL). Considere seu uso e planeje adequadamente. Para obter mais informações, consulte Diretrizes de fim da vida útil do CentOS.
Este artigo descreve como solucionar problemas do ambiente chroot na VM (máquina virtual) de resgate no Linux.
Ubuntu 16.x e Ubuntu 18.x e Ubuntu 20.04
Pare ou desaloque a VM afetada.
Crie uma VM de resgate da mesma geração, mesma versão do sistema operacional, no mesmo grupo de recursos e local usando o disco gerenciado.
Use o portal do Azure para tirar um instantâneo do disco do sistema operacional da máquina virtual afetada.
Crie um disco a partir do instantâneo do disco do sistema operacional e anexe-o à VM de resgate.
Depois que o disco for criado, solucione problemas do ambiente chroot na VM de resgate.
Acesse sua VM como usuário raiz usando o seguinte comando:
sudo su -
Encontre o disco usando
dmesg
(o método usado para descobrir seu novo disco pode variar). O exemplo a seguir usadmesg
para filtrar em discos SCSI (Small Computer Systems Interface):dmesg | grep SCSI
A saída do comando é semelhante ao exemplo a seguir. Neste exemplo, o disco /dev/sdc é o que você deseja:
[ 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
Use os seguintes comandos para acessar o ambiente 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
Solucione problemas do ambiente chroot.
Use os seguintes comandos para sair do ambiente 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
Observação
Se você receber a mensagem de erro "não é possível desmontar /rescue", adicione a
-l
opção aoumount
comando, por exemplo,umount -l /rescue
.
Desanexe o disco da VM de resgate e execute uma troca de disco com a VM original.
Inicie a VM original e verifique sua conectividade.
RHEL/Centos/Oracle 6.x && Oracle 8.x && RHEL/Centos 7.x com partições RAW
Pare ou desaloque a VM afetada.
Crie uma imagem de VM de resgate da mesma versão do sistema operacional no mesmo grupo de recursos (RSG) e local usando um disco gerenciado.
Use o portal do Azure para tirar um instantâneo do disco do sistema operacional da máquina virtual afetada.
Crie um disco a partir do instantâneo do disco do sistema operacional e anexe-o à VM de resgate.
Depois que o disco for criado, solucione problemas do ambiente chroot na VM de resgate.
Acesse sua VM como usuário raiz usando o seguinte comando:
sudo su -
Encontre o disco usando
dmesg
(o método usado para descobrir seu novo disco pode variar). O exemplo a seguir usadmesg
para filtrar em discos SCSI:dmesg | grep SCSI
A saída do comando é semelhante ao exemplo a seguir. Neste exemplo, o disco /dev/sdc é o que você deseja:
[ 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
Use os seguintes comandos para acessar o ambiente 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
Solucione problemas do ambiente chroot.
Use os seguintes comandos para sair do ambiente chroot:
exit umount /rescue/proc/ umount /rescue/sys/ umount /rescue/dev/pts umount /rescue/dev/ umount /rescue/run cd / umount /rescue/boot/ umount /rescue
Observação
Se você receber a mensagem de erro "não é possível desmontar /rescue", adicione a
-l
opção aoumount
comando, por exemplo,umount -l /rescue
.
Desanexe o disco da VM de resgate e execute uma troca de disco com a VM original.
Inicie a VM original e verifique sua conectividade.
RHEL/Centos 7.x e 8.X com LVM
Observação
Se a VM original incluir o LVM (Gerenciador de Volume Lógico) no disco do sistema operacional, crie a VM de resgate usando a imagem com partições brutas no disco do sistema operacional.
Pare ou desaloque a VM afetada.
Crie uma imagem de VM de resgate da mesma versão do sistema operacional no mesmo grupo de recursos (RSG) e local usando um disco gerenciado.
Use o portal do Azure para tirar um instantâneo do disco do sistema operacional da máquina virtual afetada.
Crie um disco a partir do instantâneo do disco do sistema operacional e anexe-o à VM de resgate.
Depois que o disco for criado, solucione problemas do ambiente chroot na VM de resgate.
Acesse sua VM como usuário raiz usando o seguinte comando:
sudo su -
Encontre o disco usando
dmesg
(o método usado para descobrir seu novo disco pode variar). O exemplo a seguir usadmesg
para filtrar em discos SCSI:dmesg | grep SCSI
A saída do comando é semelhante ao exemplo a seguir. Neste exemplo, o disco /dev/sdc é o que você deseja:
[ 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
Use os seguintes comandos para ativar o grupo de volumes lógicos:
vgscan --mknodes vgchange -ay lvscan
Use o
lsblk
comando para recuperar os nomes 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
Use os seguintes comandos para preparar o diretório 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
As partições /rescue/boot/ e /rescue/boot/efi podem nem sempre estar localizadas em /dev/sdc2 ou /dev/sdc1. Se você encontrar um erro ao tentar montar essas partições, verifique o arquivo /rescue/etc/fstab para determinar os dispositivos corretos para as partições /boot e /boot/efi do disco do sistema operacional quebrado. Em seguida, execute o
blkid
comando e compare o UUID (Universal Unique Identifier) do arquivo /rescue/etc/fstab com a saída doblkid
comando para determinar o dispositivo correto para montar /rescue/boot/ e /rescue/boot/efi na VM de reparo.O
mount /dev/mapper/rootvg-optlv /rescue/opt
comando pode falhar se o grupo de volumes rootvg-optlv não existir. Nesse caso, você pode ignorar esse comando.Acesse o ambiente chroot usando os seguintes comandos:
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
Solucione problemas do ambiente chroot.
Use os seguintes comandos para sair do ambiente 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
Observação
Se você receber a mensagem de erro "não é possível desmontar /rescue", adicione a
-l
opção aoumount
comando, por exemplo,umount -l /rescue
.
Desanexe o disco da VM de resgate e execute uma troca de disco com a VM original.
Inicie a VM original e verifique sua conectividade.
Usando a mesma imagem LVM
Observação
Se você precisar implantar a VM de resgate usando a mesma imagem LVM, precisará modificar alguns aspectos da VM de resgate com LVM.
Os comandos a seguir devem ser executados na VM de recuperação/resgate criada temporariamente para a operação de recuperação.
Use o seguinte comando para verificar o status dos discos antes de anexar o disco que você deseja resgatar:
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
Anexe o disco que deseja resgatar como uma unidade de dados.
Verifique os discos novamente usando o seguinte comando:
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
A saída do comando não mostra as estruturas LVM imediatamente.
Exiba partições LVM físicas usando o seguinte comando:
sudo pvs
Esta saída mostra avisos sobre volumes físicos duplicados (PVs):
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
Use o
vmimportclone
comando para importar o rootvg da unidade de dados usando outro nome.Este comando altera o UUID do PV e também o ativa:
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
Verifique a alteração de nome usando o seguinte comando:
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
Renomeie o rootvg da VM de resgate usando o seguinte comando:
sudo vgrename rootvg oldvg
Volume group "rootvg" successfully renamed to "oldvg"
Verifique os discos usando o seguinte comando:
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
Monte o sistema de arquivos que vem da unidade de dados.
Ao usar
xfs
o , especifique a-o nouuid
opção para evitar conflitos com os UUIDs e monte os sistemas de arquivos necessários para executar um chroot. Essa opção não está disponível emext4
sistemas de arquivos, portanto, você precisa removê-la dos comandos nesse cenário: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
As partições /rescue/boot/ e /rescue/boot/efi podem nem sempre estar localizadas em /dev/sdc2 ou /dev/sdc1. Se você encontrar um erro ao tentar montar essas partições, verifique o arquivo /rescue/etc/fstab para determinar os dispositivos corretos para as partições /boot e /boot/efi do disco do sistema operacional quebrado. Em seguida, execute o
blkid
comando e compare o UUID do arquivo /rescue/etc/fstab com a saída doblkid
comando para determinar o dispositivo correto para montar /rescue/boot/ e /rescue/boot/efi na VM de reparo. UUIDs duplicados podem aparecer na saída. Nesse cenário, monte a partição que corresponde à letra do dispositivo da etapa 5. No exemplo desta seção, a partição correta que você deve montar é /dev/sdc. O dev/sda representa o sistema operacional atualmente em uso e deve ser ignorado.Verifique as montagens usando o seguinte comando:
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
Use chroot usando o seguinte comando:
sudo chroot /rescue/
Verifique as montagens "dentro" do ambiente chroot usando o seguinte comando:
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 /
Agora, rescuemevg-rootlv é aquele montado em /.
Renomeie o Grupo de Volumes (VG) para mantê-lo consistente usando o comando a seguir. Renomear o VG evita que você enfrente problemas ao regenerar o initrd e inicializar o disco novamente na VM original.
sudo vgrename rescuemevg rootvg
Volume group "rescuemevg" successfully renamed to "rootvg"
Verifique a alteração usando o seguinte comando:
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 /
Prossiga com as atividades necessárias para resgatar o sistema operacional. Essas atividades podem incluir a regeneração de initramfs ou a configuração do GRUB.
Saia do ambiente chroot usando o seguinte comando:
sudo exit
Desmonte e desanexe o disco de dados da VM de resgate e execute uma troca de disco com a VM original usando os seguintes comandos:
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
Inicie a VM original e verifique sua funcionalidade.
Oracle 7.x
Pare ou desaloque a VM afetada.
Crie uma imagem de VM de resgate da mesma versão do sistema operacional, no mesmo grupo de recursos (RSG) e local usando um disco gerenciado.
Use o portal do Azure para tirar um instantâneo do disco do sistema operacional da máquina virtual afetada.
Crie um disco a partir do instantâneo do disco do sistema operacional e anexe-o à VM de resgate.
Depois que o disco for criado, solucione problemas do ambiente chroot na VM de resgate.
Acesse sua VM como usuário raiz usando o seguinte comando:
sudo su -
Localize o disco usando
dmesg
(o método usado para descobrir seu novo disco pode variar). O exemplo a seguir usadmesg
para filtrar em discos SCSI:dmesg | grep SCSI
A saída do comando é semelhante ao exemplo a seguir. Neste exemplo, o
/dev/sdc
disco é o que você deseja:[ 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
Use os seguintes comandos para acessar o ambiente 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
Solucione problemas do ambiente chroot.
Use os seguintes comandos para sair do ambiente 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
Observação
Se você receber a mensagem de erro "não é possível desmontar /rescue", adicione a
-l
opção aoumount
comando, por exemplo,umount -l /rescue
.
Desanexe o disco da VM de resgate e execute uma troca de disco com a VM original.
Inicie a VM original e verifique sua conectividade.
SUSE-SLES 12 SP4, SUSE-SLES 12 SP4 para SAP && ## SUSE-SLES 15 SP1, SUSE-SLES 15 SP1 para SAP
Pare ou desaloque a VM afetada.
Crie uma imagem de VM de resgate da mesma versão do sistema operacional, no mesmo grupo de recursos (RSG) e local usando um disco gerenciado.
Use o portal do Azure para tirar um instantâneo do disco do sistema operacional da máquina virtual afetada.
Crie um disco a partir do instantâneo do disco do sistema operacional e anexe-o à VM de resgate.
Depois que o disco for criado, solucione problemas do ambiente chroot na VM de resgate.
Acesse sua VM como usuário raiz usando o seguinte comando:
sudo su -
Encontre o disco usando
dmesg
(o método usado para descobrir seu novo disco pode variar). O exemplo a seguir usadmesg
para filtrar em discos SCSI:dmesg | grep SCSI
A saída do comando é semelhante ao exemplo a seguir. Neste exemplo, o
/dev/sdc
disco é o que você deseja:[ 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
Use os seguintes comandos para acessar o ambiente 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
Solucione problemas do ambiente chroot.
Use os seguintes comandos para sair do ambiente 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
Observação
Se você receber a mensagem de erro "não é possível desmontar /rescue", adicione a
-l
opção aoumount
comando, por exemplo,umount -l /rescue
.
Desanexe o disco da VM de resgate e execute uma troca de disco com a VM original.
Inicie a VM original e verifique sua conectividade.
Próximas etapas
Entre em contato conosco para obter ajuda
Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.