Поделиться через


Среда Chroot в виртуальной машине спасения Linux

Область применения: ✔️ виртуальные машины Linux

Примечание.

CentOS, на который ссылается в этой статье, является дистрибутивом Linux и достигнет конца жизни (EOL). Думайте об использовании и планировании соответствующим образом. Дополнительные сведения см. в руководстве centOS End Of Life.

В этой статье описывается устранение неполадок среды chroot в виртуальной машине спасения в Linux.

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

  1. Остановите или разключите затронутую виртуальную машину.

  2. Создайте виртуальную машину спасения одного поколения, той же версии ОС в той же группе ресурсов и расположении с помощью управляемого диска.

  3. Используйте портал Azure для создания моментального снимка диска ос затронутой виртуальной машины.

  4. Создайте диск из моментального снимка диска ОС и подключите его к виртуальной машине спасения.

  5. После создания диска устраните неполадки среды chroot на виртуальной машине спасения.

    1. Доступ к виртуальной машине в качестве корневого пользователя с помощью следующей команды:

      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", добавьте -l параметр в umount команду, например umount -l /rescue.

  6. Отсоедините диск от виртуальной машины спасения и выполните переключение диска с исходной виртуальной машиной.

  7. Запустите исходную виртуальную машину и проверьте его подключение.

RHEL/Centos/Oracle 6.x && Oracle 8.x && RHEL/Centos 7.x с необработанными секциями

  1. Остановите или разключите затронутую виртуальную машину.

  2. Создайте образ виртуальной машины спасения той же версии ОС в той же группе ресурсов (RSG) и расположении с помощью управляемого диска.

  3. Используйте портал Azure для создания моментального снимка диска ос затронутой виртуальной машины.

  4. Создайте диск из моментального снимка диска ОС и подключите его к виртуальной машине спасения.

  5. После создания диска устраните неполадки среды chroot на виртуальной машине спасения.

    1. Доступ к виртуальной машине в качестве корневого пользователя с помощью следующей команды:

      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", добавьте -l параметр в umount команду, например umount -l /rescue.

  6. Отсоедините диск от виртуальной машины спасения и выполните переключение диска с исходной виртуальной машиной.

  7. Запустите исходную виртуальную машину и проверьте его подключение.

RHEL/Centos 7.x и 8.X с LVM

Примечание.

Если исходная виртуальная машина включает диспетчер логических томов (LVM) на диске ОС, создайте виртуальную машину спасения с помощью образа с необработанными секциями на диске ОС.

  1. Остановите или разключите затронутую виртуальную машину.

  2. Создайте образ виртуальной машины спасения той же версии ОС в той же группе ресурсов (RSG) и расположении с помощью управляемого диска.

  3. Используйте портал Azure для создания моментального снимка диска ос затронутой виртуальной машины.

  4. Создайте диск из моментального снимка диска ОС и подключите его к виртуальной машине спасения.

  5. После создания диска устраните неполадки среды chroot на виртуальной машине спасения.

    1. Доступ к виртуальной машине в качестве корневого пользователя с помощью следующей команды:

      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. Чтобы подготовить dir 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 , чтобы определить правильные устройства для секций /boot и /boot/efi с сломанного диска ОС. Затем выполните blkid команду и сравните универсальный уникальный идентификатор (UUID) из файла /rescue/etc/fstab с выходными данными blkid команды, чтобы определить правильное устройство для подключения/спасения/загрузки/загрузки/efi на виртуальной машине восстановления.

      Команда может завершиться ошибкой, mount /dev/mapper/rootvg-optlv /rescue/opt если группа томов rootvg-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", добавьте -l параметр в umount команду, например umount -l /rescue.

  6. Отсоедините диск от виртуальной машины спасения и выполните переключение диска с исходной виртуальной машиной.

  7. Запустите исходную виртуальную машину и проверьте его подключение.

Использование того же образа LVM

Примечание.

Если необходимо развернуть виртуальную машину спасения с помощью того же образа LVM, необходимо изменить некоторые аспекты виртуальной машины спасения с помощью LVM.

Следующие команды необходимо выполнить на виртуальной машине восстановления и спасения, временно созданной для операции восстановления.

  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 из диска данных с помощью другого имени.

    Эта команда изменяет идентификатор UUID pv, а также активирует его:

    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. Переименуйте корень виртуальной машины спасения с помощью следующей команды:

    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 , чтобы определить правильные устройства для секций /boot и /boot/efi с сломанного диска ОС. Затем выполните blkid команду и сравните идентификатор UUID из файла /rescue/etc/fstab с выходными данными blkid команды, чтобы определить правильное устройство для подключения /аварийного подключения /загрузки/ и /rescue/boot/efi на виртуальной машине восстановления. Повторяющиеся идентификаторы UUID могут отображаться в выходных данных. В этом сценарии подключите раздел, соответствующий букве устройства из шага 5. В примере этого раздела необходимо подключить правильную секцию : /dev/sdc. Среда разработки или 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   /
    

    Теперь, спасатель-rootlv является одним подключенным /.

  13. Переименуйте группу томов (VG), чтобы сохранить ее согласованной с помощью следующей команды. Переименование виртуальной машины позволяет устранить проблемы при повторном создании инициализации и загрузке диска на исходной виртуальной машине.

    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. Продолжайте действия, необходимые для спасения ОС. Эти действия могут включать повторное создание инитрамфов или конфигурацию GRUB.

  16. Выход из среды chroot с помощью следующей команды:

    sudo exit
    
  17. Отключите и отключите диск данных с виртуальной машины спасения и выполните переключение диска с исходной виртуальной машиной с помощью следующих команд:

    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. Запустите исходную виртуальную машину и проверьте ее функциональность.

Oracle 7.x

  1. Остановите или разключите затронутую виртуальную машину.

  2. Создайте образ виртуальной машины спасения той же версии ОС в той же группе ресурсов (RSG) и расположении с помощью управляемого диска.

  3. Используйте портал Azure для создания моментального снимка диска ос затронутой виртуальной машины.

  4. Создайте диск из моментального снимка диска ОС и подключите его к виртуальной машине спасения.

  5. После создания диска устраните неполадки среды chroot на виртуальной машине спасения.

    1. Доступ к виртуальной машине в качестве корневого пользователя с помощью следующей команды:

      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", добавьте -l параметр в umount команду, например umount -l /rescue.

  6. Отсоедините диск от виртуальной машины спасения и выполните переключение диска с исходной виртуальной машиной.

  7. Запустите исходную виртуальную машину и проверьте его подключение.

SUSE-SLES 12 с пакетом обновления 4 (SP4), SUSE-SLES 12 SP4 для SAP && ## SUSE-SLES 15 с пакетом обновления 1 (SP1), SUSE-SLES 15 с пакетом обновления 1 (SP1) для SAP

  1. Остановите или разключите затронутую виртуальную машину.

  2. Создайте образ виртуальной машины спасения той же версии ОС в той же группе ресурсов (RSG) и расположении с помощью управляемого диска.

  3. Используйте портал Azure для создания моментального снимка диска ос затронутой виртуальной машины.

  4. Создайте диск из моментального снимка диска ОС и подключите его к виртуальной машине спасения.

  5. После создания диска устраните неполадки среды chroot на виртуальной машине спасения.

    1. Доступ к виртуальной машине в качестве корневого пользователя с помощью следующей команды:

      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", добавьте -l параметр в umount команду, например umount -l /rescue.

  6. Отсоедините диск от виртуальной машины спасения и выполните переключение диска с исходной виртуальной машиной.

  7. Запустите исходную виртуальную машину и проверьте его подключение.

Next Steps

Свяжитесь с нами для получения помощи

Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.