Udostępnij za pośrednictwem


Środowisko Chroot na maszynie wirtualnej ratowniczej z systemem Linux

Dotyczy: ✔️ maszyny wirtualne z systemem Linux

Uwaga

CentOS, do których odwołuje się ten artykuł, jest dystrybucją systemu Linux i osiągnie koniec życia (EOL). Rozważ odpowiednie użycie i zaplanuj. Aby uzyskać więcej informacji, zobacz CentOS End Of Life guidance (Wskazówki dotyczące zakończenia życia systemu CentOS).

W tym artykule opisano sposób rozwiązywania problemów ze środowiskiem chroot na maszynie wirtualnej ratowniczej w systemie Linux.

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

  1. Zatrzymaj lub cofnij przydział maszyny wirtualnej, której dotyczy problem.

  2. Utwórz ratunkową maszynę wirtualną tej samej generacji, tej samej wersji systemu operacyjnego w tej samej grupie zasobów i lokalizacji przy użyciu dysku zarządzanego.

  3. Użyj witryny Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, której dotyczy problem.

  4. Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratowniczej maszyny wirtualnej.

  5. Po utworzeniu dysku rozwiąż problemy ze środowiskiem chroot na maszynie wirtualnej ratowniczej.

    1. Uzyskaj dostęp do maszyny wirtualnej jako użytkownik główny przy użyciu następującego polecenia:

      sudo su -

    2. Znajdź dysk przy użyciu dmesg (metoda używana do odnajdywania nowego dysku może się różnić). W poniższym przykładzie użyto dmesg funkcji filtrowania dysków interfejsu SCSI (Small Computer Systems Interface):

      dmesg | grep SCSI

      Dane wyjściowe polecenia są podobne do poniższego przykładu. W tym przykładzie dysk /dev/sdc jest odpowiedni:

      [    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. Użyj następujących poleceń, aby uzyskać dostęp do środowiska 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. Rozwiązywanie problemów ze środowiskiem chroot.

    5. Użyj następujących poleceń, aby zamknąć środowisko 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
      

      Uwaga

      Jeśli zostanie wyświetlony komunikat o błędzie "nie można odinstalować /rescue", dodaj -l opcję do umount polecenia, na przykład umount -l /rescue.

  6. Odłącz dysk od maszyny wirtualnej ratowniczej i wykonaj zamianę dysku na oryginalną maszynę wirtualną.

  7. Uruchom oryginalną maszynę wirtualną i sprawdź jej łączność.

RHEL/Centos/Oracle 6.x && Oracle 8.x && RHEL/Centos 7.x z partycjami RAW

  1. Zatrzymaj lub cofnij przydział maszyny wirtualnej, której dotyczy problem.

  2. Utwórz obraz maszyny wirtualnej ratowniczej tej samej wersji systemu operacyjnego w tej samej grupie zasobów (RSG) i lokalizacji przy użyciu dysku zarządzanego.

  3. Użyj witryny Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, której dotyczy problem.

  4. Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratowniczej maszyny wirtualnej.

  5. Po utworzeniu dysku rozwiąż problemy ze środowiskiem chroot na maszynie wirtualnej ratowniczej.

    1. Uzyskaj dostęp do maszyny wirtualnej jako użytkownik główny przy użyciu następującego polecenia:

      sudo su -

    2. Znajdź dysk przy użyciu dmesg (metoda używana do odnajdywania nowego dysku może się różnić). W poniższym przykładzie użyto dmesg funkcji filtrowania na dyskach SCSI:

      dmesg | grep SCSI

      Dane wyjściowe polecenia są podobne do poniższego przykładu. W tym przykładzie dysk /dev/sdc jest odpowiedni:

      [    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. Użyj następujących poleceń, aby uzyskać dostęp do środowiska 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. Rozwiązywanie problemów ze środowiskiem chroot.

    5. Użyj następujących poleceń, aby zamknąć środowisko chroot:

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

      Uwaga

      Jeśli zostanie wyświetlony komunikat o błędzie "nie można odinstalować /rescue", dodaj -l opcję do umount polecenia, na przykład umount -l /rescue.

  6. Odłącz dysk od maszyny wirtualnej ratowniczej i wykonaj zamianę dysku na oryginalną maszynę wirtualną.

  7. Uruchom oryginalną maszynę wirtualną i sprawdź jej łączność.

RHEL/Centos 7.x i 8.X z LVM

Uwaga

Jeśli oryginalna maszyna wirtualna zawiera Menedżera woluminów logicznych (LVM) na dysku systemu operacyjnego, utwórz ratunkową maszynę wirtualną przy użyciu obrazu z nieprzetworzonymi partycjami na dysku systemu operacyjnego.

  1. Zatrzymaj lub cofnij przydział maszyny wirtualnej, której dotyczy problem.

  2. Utwórz obraz maszyny wirtualnej ratowniczej tej samej wersji systemu operacyjnego w tej samej grupie zasobów (RSG) i lokalizacji przy użyciu dysku zarządzanego.

  3. Użyj witryny Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, której dotyczy problem.

  4. Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratowniczej maszyny wirtualnej.

  5. Po utworzeniu dysku rozwiąż problemy ze środowiskiem chroot na maszynie wirtualnej ratowniczej.

    1. Uzyskaj dostęp do maszyny wirtualnej jako użytkownik główny przy użyciu następującego polecenia:

      sudo su -

    2. Znajdź dysk przy użyciu dmesg (metoda używana do odnajdywania nowego dysku może się różnić). W poniższym przykładzie użyto dmesg funkcji filtrowania na dyskach SCSI:

      dmesg | grep SCSI

      Dane wyjściowe polecenia są podobne do poniższego przykładu. W tym przykładzie dysk /dev/sdc jest odpowiedni:

      [    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. Użyj następujących poleceń, aby aktywować grupę woluminów logicznych:

      vgscan --mknodes
      vgchange -ay
      lvscan
      
    4. Użyj polecenia , lsblk aby pobrać nazwy 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. Użyj następujących poleceń, aby przygotować dir katalogu 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
      

      Partycje /rescue/boot/ i /rescue/boot/efi mogą nie zawsze znajdować się na /dev/sdc2 lub /dev/sdc1. Jeśli podczas próby zainstalowania tych partycji wystąpi błąd, sprawdź plik /rescue/etc/fstab, aby określić poprawne urządzenia dla partycji /boot i /boot/efi z uszkodzonego dysku systemu operacyjnego. Następnie uruchom blkid polecenie i porównaj unikatowy identyfikator uniwersalny (UUID) z pliku /rescue/etc/fstab z danymi wyjściowymi blkid polecenia , aby określić prawidłowe urządzenie do instalowania /rescue/boot/ i /rescue/boot/efi na maszynie wirtualnej naprawy.

      Polecenie mount /dev/mapper/rootvg-optlv /rescue/opt może zakończyć się niepowodzeniem, jeśli grupa woluminów rootvg-optlv nie istnieje. W takim przypadku można pominąć to polecenie.

    6. Uzyskaj dostęp do środowiska chroot przy użyciu następujących poleceń:

      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. Rozwiązywanie problemów ze środowiskiem chroot.

    8. Użyj następujących poleceń, aby zamknąć środowisko 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
      

      Uwaga

      Jeśli zostanie wyświetlony komunikat o błędzie "nie można odinstalować /rescue", dodaj -l opcję do umount polecenia, na przykład umount -l /rescue.

  6. Odłącz dysk od maszyny wirtualnej ratowniczej i wykonaj zamianę dysku na oryginalną maszynę wirtualną.

  7. Uruchom oryginalną maszynę wirtualną i sprawdź jej łączność.

Korzystanie z tego samego obrazu LVM

Uwaga

Jeśli musisz wdrożyć maszynę wirtualną ratunku przy użyciu tego samego obrazu LVM, musisz zmodyfikować niektóre aspekty maszyny wirtualnej ratowniczej przy użyciu maszyny wirtualnej LVM.

Następujące polecenia należy wykonać na maszynie wirtualnej odzyskiwania/ratowania, która jest tymczasowo tworzona na potrzeby operacji odzyskiwania.

  1. Użyj następującego polecenia, aby sprawdzić stan dysków przed dołączeniem dysku, który chcesz uratować:

    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. Dołącz dysk, który chcesz uratować jako dysk danych.

  3. Ponownie sprawdź dyski przy użyciu następującego polecenia:

    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
    

    Dane wyjściowe polecenia nie pokazują od razu struktur LVM.

  4. Wyświetl fizyczne partycje LVM przy użyciu następującego polecenia:

    sudo pvs
    

    W tych danych wyjściowych są wyświetlane ostrzeżenia dotyczące zduplikowanych woluminów fizycznych (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 Za pomocą polecenia zaimportuj katalog rootvg z dysku danych przy użyciu innej nazwy.

    To polecenie zmienia identyfikator UUID pv, a także aktywuje go:

    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. Sprawdź zmianę nazwy przy użyciu następującego polecenia:

    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. Zmień nazwę rootvg maszyny wirtualnej ratowniczej, używając następującego polecenia:

    sudo vgrename rootvg oldvg
    
    Volume group "rootvg" successfully renamed to "oldvg"
    
  8. Sprawdź dyski przy użyciu następującego polecenia:

    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. Zainstaluj system plików pochodzący z dysku danych.

    W przypadku korzystania z xfsprogramu określ -o nouuid opcję, aby uniknąć konfliktów z identyfikatorami UUID i zainstalować wymagane systemy plików do wykonania katalogu chroot. Ta opcja nie jest dostępna w ext4 systemach plików, dlatego należy usunąć ją z poleceń w takim scenariuszu:

    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
    

    Partycje /rescue/boot/ i /rescue/boot/efi mogą nie zawsze znajdować się na /dev/sdc2 lub /dev/sdc1. Jeśli podczas próby zainstalowania tych partycji wystąpi błąd, sprawdź plik /rescue/etc/fstab, aby określić poprawne urządzenia dla partycji /boot i /boot/efi z uszkodzonego dysku systemu operacyjnego. Następnie uruchom blkid polecenie i porównaj identyfikator UUID z pliku /rescue/etc/fstab z danymi wyjściowymi blkid polecenia, aby określić prawidłowe urządzenie do instalowania /rescue/boot/ i /rescue/boot/efi na maszynie wirtualnej naprawy. W danych wyjściowych mogą pojawić się zduplikowane identyfikatory UUID. W tym scenariuszu zainstaluj partycję zgodną z literą urządzenia z kroku 5. W przykładzie tej sekcji poprawna partycja, którą należy zainstalować, to /dev/sdc. Dev /sda reprezentuje obecnie używany system operacyjny i powinien być ignorowany.

  10. Zweryfikuj instalację przy użyciu następującego polecenia:

    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. Użyj polecenia chroot przy użyciu następującego polecenia:

    sudo chroot /rescue/
    
  12. Sprawdź instalację "wewnątrz" środowiska chroot przy użyciu następującego polecenia:

    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   /
    

    Teraz, rescuemevg-rootlv jest ten zainstalowany na ./

  13. Zmień nazwę grupy woluminów ( VG), aby zachować ją spójną, używając następującego polecenia. Zmiana nazwy grupy wirtualnej uniemożliwia problemy podczas ponownego generowania initrda i ponownego rozruchu dysku na oryginalnej maszynie wirtualnej.

    sudo vgrename rescuemevg rootvg
    
    Volume group "rescuemevg" successfully renamed to "rootvg"
    
  14. Zweryfikuj zmianę, używając następującego polecenia:

    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. Kontynuuj działania wymagane do ratowania systemu operacyjnego. Te działania mogą obejmować ponowne generowanie initramfs lub konfigurację GRUB.

  16. Zamknij środowisko chroot przy użyciu następującego polecenia:

    sudo exit
    
  17. Odinstaluj i odłącz dysk danych od ratowniczej maszyny wirtualnej i wykonaj zamianę dysku z oryginalną maszyną wirtualną przy użyciu następujących poleceń:

    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. Uruchom oryginalną maszynę wirtualną i sprawdź jej funkcjonalność.

Oracle 7.x

  1. Zatrzymaj lub cofnij przydział maszyny wirtualnej, której dotyczy problem.

  2. Utwórz obraz ratownictwa maszyny wirtualnej tej samej wersji systemu operacyjnego w tej samej grupie zasobów (RSG) i lokalizacji przy użyciu dysku zarządzanego.

  3. Użyj witryny Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, której dotyczy problem.

  4. Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratowniczej maszyny wirtualnej.

  5. Po utworzeniu dysku rozwiąż problemy ze środowiskiem chroot na maszynie wirtualnej ratowniczej.

    1. Uzyskaj dostęp do maszyny wirtualnej jako użytkownik główny przy użyciu następującego polecenia:

      sudo su -

    2. Znajdź dysk przy użyciu dmesg (metoda używana do odnajdywania nowego dysku może się różnić). W poniższym przykładzie użyto dmesg funkcji filtrowania na dyskach SCSI:

      dmesg | grep SCSI

      Dane wyjściowe polecenia są podobne do poniższego przykładu. W tym przykładzie /dev/sdc dysk jest odpowiedni:

      [    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. Użyj następujących poleceń, aby uzyskać dostęp do środowiska 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. Rozwiązywanie problemów ze środowiskiem chroot.

    5. Użyj następujących poleceń, aby zamknąć środowisko 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
      

      Uwaga

      Jeśli zostanie wyświetlony komunikat o błędzie "nie można odinstalować /rescue", dodaj -l opcję do umount polecenia, na przykład umount -l /rescue.

  6. Odłącz dysk od maszyny wirtualnej ratowniczej i wykonaj zamianę dysku na oryginalną maszynę wirtualną.

  7. Uruchom oryginalną maszynę wirtualną i sprawdź jej łączność.

SUSE-SLES 12 SP4, SUSE-SLES 12 SP4 For SAP && ## SUSE-SLES 15 SP1, SUSE-SLES 15 SP1 For SAP

  1. Zatrzymaj lub cofnij przydział maszyny wirtualnej, której dotyczy problem.

  2. Utwórz obraz ratownictwa maszyny wirtualnej tej samej wersji systemu operacyjnego w tej samej grupie zasobów (RSG) i lokalizacji przy użyciu dysku zarządzanego.

  3. Użyj witryny Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, której dotyczy problem.

  4. Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratowniczej maszyny wirtualnej.

  5. Po utworzeniu dysku rozwiąż problemy ze środowiskiem chroot na maszynie wirtualnej ratowniczej.

    1. Uzyskaj dostęp do maszyny wirtualnej jako użytkownik główny przy użyciu następującego polecenia:

      sudo su -

    2. Znajdź dysk przy użyciu dmesg (metoda używana do odnajdywania nowego dysku może się różnić). W poniższym przykładzie użyto dmesg funkcji filtrowania na dyskach SCSI:

      dmesg | grep SCSI

      Dane wyjściowe polecenia są podobne do poniższego przykładu. W tym przykładzie /dev/sdc dysk jest odpowiedni:

      [    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. Użyj następujących poleceń, aby uzyskać dostęp do środowiska 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. Rozwiązywanie problemów ze środowiskiem chroot.

    5. Użyj następujących poleceń, aby zamknąć środowisko 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
      

      Uwaga

      Jeśli zostanie wyświetlony komunikat o błędzie "nie można odinstalować /rescue", dodaj -l opcję do umount polecenia, na przykład umount -l /rescue.

  6. Odłącz dysk od maszyny wirtualnej ratowniczej i wykonaj zamianę dysku na oryginalną maszynę wirtualną.

  7. Uruchom oryginalną maszynę wirtualną i sprawdź jej łączność.

Następne kroki

Skontaktuj się z nami, aby uzyskać pomoc

Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pomoc techniczną społeczności platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii na temat platformy Azure.