Środowisko Chroot na maszynie wirtualnej ratunkowej z systemem Linux

Uwaga

CentOS, do którego odwołuje się ten artykuł, jest dystrybucją systemu Linux i osiągnie koniec życia (EOL). Rozważ użycie i odpowiednio zaplanuj. Aby uzyskać więcej informacji, zobacz Wskazówki dotyczące końca życia systemu CentOS.

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

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

  1. Zatrzymaj lub cofnij przydział dotkniętej maszyny wirtualnej.

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

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

  4. Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratunkowej 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 za pomocą następującego polecenia:

      sudo su -

    2. Znajdź dysk przy użyciu dmesg metody (metoda używana do odnajdywania nowego dysku może się różnić). W poniższym przykładzie użyto dmesg do 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 tym, czego potrzebujesz:

      [    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 opcję -l do umount polecenia, na przykład umount -l /rescue.

  6. Odłącz dysk od maszyny wirtualnej ratunkowej i przeprowadź wymianę dysku z 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ł dotkniętej maszyny wirtualnej.

  2. Utwórz obraz ratunkowej 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 Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, którego dotyczy problem.

  4. Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratunkowej 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 za pomocą następującego polecenia:

      sudo su -

    2. Znajdź dysk przy użyciu dmesg metody (metoda używana do odnajdywania nowego dysku może się różnić). Poniższy przykład używa do dmesg filtrowania dysków SCSI:

      dmesg | grep SCSI

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

      [    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 opcję -l do umount polecenia, na przykład umount -l /rescue.

  6. Odłącz dysk od maszyny wirtualnej ratunkowej i przeprowadź wymianę dysku z oryginalną maszyną wirtualną.

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

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

Uwaga

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

  1. Zatrzymaj lub cofnij przydział dotkniętej maszyny wirtualnej.

  2. Utwórz obraz ratunkowej 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 Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, którego dotyczy problem.

  4. Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratunkowej 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 za pomocą następującego polecenia:

      sudo su -

    2. Znajdź dysk przy użyciu dmesg metody (metoda używana do odnajdywania nowego dysku może się różnić). Poniższy przykład używa do dmesg filtrowania dysków SCSI:

      dmesg | grep SCSI

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

      [    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ć chroot dir:

      mkdir /rescue
      mount /dev/mapper/rootvg-rootlv /rescue
      mount /dev/mapper/rootvg-varlv /rescue/var
      mount /dev/mapper/rootvg-homelv /rescue/home
      mount /dev/mapper/rootvg-usrlv /rescue/usr
      mount /dev/mapper/rootvg-tmplv /rescue/tmp
      mount /dev/mapper/rootvg-optlv /rescue/opt
      mount /dev/sdc2 /rescue/boot/
      mount /dev/sdc1 /rescue/boot/efi
      

      Partycje /rescue/boot/ i /rescue/boot/efi nie zawsze mogą 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 uniwersalny unikatowy identyfikator (UUID) z pliku /rescue/etc/fstab z danymi wyjściowymi blkid polecenia, aby określić poprawne 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 opcję -l do umount polecenia, na przykład umount -l /rescue.

  6. Odłącz dysk od maszyny wirtualnej ratunkowej i przeprowadź wymianę dysku z oryginalną maszyną wirtualną.

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

Używanie tego samego obrazu LVM

Uwaga

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

Następujące polecenia mają być wykonywane na maszynie wirtualnej odzyskiwania/ratowania, która została tymczasowo utworzona 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
    

    Te dane wyjściowe zawierają 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. Użyj polecenia , vmimportclone aby zaimportować plik 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 za pomocą 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 ratunkowej przy użyciu 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 opcję -o nouuid , aby uniknąć konfliktów z identyfikatorami UUID i zainstaluj wymagane systemy plików do wykonania chroot. Ta opcja nie jest dostępna w ext4 systemach plików, dlatego należy ją usunąć 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 nie zawsze mogą 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ć poprawne 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 prawidłowa partycja, którą należy zainstalować, to /dev/sdc. Funkcja dev/sda reprezentuje obecnie używany system operacyjny i powinna zostać zignorowana.

  10. Sprawdź instalacje 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 narzędzia chroot przy użyciu następującego polecenia:

    sudo chroot /rescue/
    
  12. Sprawdź instalacje "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 zamontowany na /.

  13. Zmień nazwę grupy woluminów (VG), aby zachować spójność przy użyciu następującego polecenia. Zmiana nazwy maszyny wirtualnej uniemożliwia napotkanie problemów podczas ponownego generowania inicjowania i ponownego rozruchu dysku na oryginalnej maszynie wirtualnej.

    sudo vgrename rescuemevg rootvg
    
    Volume group "rescuemevg" successfully renamed to "rootvg"
    
  14. Zweryfikuj zmianę za pomocą 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 czynności wymagane do ratowania systemu operacyjnego. Działania te 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 maszyny wirtualnej ratunkowej i przeprowadź wymianę 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ł dotkniętej maszyny wirtualnej.

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

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

  4. Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratunkowej 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 za pomocą następującego polecenia:

      sudo su -

    2. Znajdź dysk przy użyciu dmesg metody (metoda używana do odnajdywania nowego dysku może się różnić). Poniższy przykład używa do dmesg filtrowania dysków SCSI:

      dmesg | grep SCSI

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

      [    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 opcję -l do umount polecenia, na przykład umount -l /rescue.

  6. Odłącz dysk od maszyny wirtualnej ratunkowej i przeprowadź wymianę dysku z 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ł dotkniętej maszyny wirtualnej.

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

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

  4. Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratunkowej 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 za pomocą następującego polecenia:

      sudo su -

    2. Znajdź dysk przy użyciu dmesg metody (metoda używana do odnajdywania nowego dysku może się różnić). Poniższy przykład używa do dmesg filtrowania dysków SCSI:

      dmesg | grep SCSI

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

      [    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 opcję -l do umount polecenia, na przykład umount -l /rescue.

  6. Odłącz dysk od maszyny wirtualnej ratunkowej i przeprowadź wymianę dysku z 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 pytanie w społeczności wsparcia dla platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii platformy Azure.