Ś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
Zatrzymaj lub cofnij przydział dotkniętej maszyny wirtualnej.
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.
Użyj Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, którego dotyczy problem.
Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratunkowej maszyny wirtualnej.
Po utworzeniu dysku rozwiąż problemy ze środowiskiem chroot na maszynie wirtualnej ratowniczej.
Uzyskaj dostęp do maszyny wirtualnej jako użytkownik główny za pomocą następującego polecenia:
sudo su -
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żytodmesg
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
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
Rozwiązywanie problemów ze środowiskiem chroot.
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
doumount
polecenia, na przykładumount -l /rescue
.
Odłącz dysk od maszyny wirtualnej ratunkowej i przeprowadź wymianę dysku z oryginalną maszyną wirtualną.
Uruchom oryginalną maszynę wirtualną i sprawdź jej łączność.
RHEL/Centos/Oracle 6.x && Oracle 8.x && RHEL/Centos 7.x z partycjami RAW
Zatrzymaj lub cofnij przydział dotkniętej maszyny wirtualnej.
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.
Użyj Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, którego dotyczy problem.
Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratunkowej maszyny wirtualnej.
Po utworzeniu dysku rozwiąż problemy ze środowiskiem chroot na maszynie wirtualnej ratowniczej.
Uzyskaj dostęp do maszyny wirtualnej jako użytkownik główny za pomocą następującego polecenia:
sudo su -
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 dodmesg
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
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
Rozwiązywanie problemów ze środowiskiem chroot.
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
doumount
polecenia, na przykładumount -l /rescue
.
Odłącz dysk od maszyny wirtualnej ratunkowej i przeprowadź wymianę dysku z oryginalną maszyną wirtualną.
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.
Zatrzymaj lub cofnij przydział dotkniętej maszyny wirtualnej.
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.
Użyj Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, którego dotyczy problem.
Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratunkowej maszyny wirtualnej.
Po utworzeniu dysku rozwiąż problemy ze środowiskiem chroot na maszynie wirtualnej ratowniczej.
Uzyskaj dostęp do maszyny wirtualnej jako użytkownik główny za pomocą następującego polecenia:
sudo su -
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 dodmesg
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
Użyj następujących poleceń, aby aktywować grupę woluminów logicznych:
vgscan --mknodes vgchange -ay lvscan
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
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ściowymiblkid
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.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
Rozwiązywanie problemów ze środowiskiem chroot.
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
doumount
polecenia, na przykładumount -l /rescue
.
Odłącz dysk od maszyny wirtualnej ratunkowej i przeprowadź wymianę dysku z oryginalną maszyną wirtualną.
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.
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
Dołącz dysk, który chcesz uratować jako dysk danych.
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.
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
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
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
Zmień nazwę rootvg maszyny wirtualnej ratunkowej przy użyciu następującego polecenia:
sudo vgrename rootvg oldvg
Volume group "rootvg" successfully renamed to "oldvg"
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
Zainstaluj system plików pochodzący z dysku danych.
W przypadku korzystania z
xfs
programu 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 wext4
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ściowymiblkid
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.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
Użyj narzędzia chroot przy użyciu następującego polecenia:
sudo chroot /rescue/
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 /.
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"
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 /
Kontynuuj czynności wymagane do ratowania systemu operacyjnego. Działania te mogą obejmować ponowne generowanie initramfs lub konfigurację grub.
Zamknij środowisko chroot przy użyciu następującego polecenia:
sudo exit
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
Uruchom oryginalną maszynę wirtualną i sprawdź jej funkcjonalność.
Oracle 7.x
Zatrzymaj lub cofnij przydział dotkniętej maszyny wirtualnej.
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.
Użyj Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, którego dotyczy problem.
Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratunkowej maszyny wirtualnej.
Po utworzeniu dysku rozwiąż problemy ze środowiskiem chroot na maszynie wirtualnej ratowniczej.
Uzyskaj dostęp do maszyny wirtualnej jako użytkownik główny za pomocą następującego polecenia:
sudo su -
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 dodmesg
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
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
Rozwiązywanie problemów ze środowiskiem chroot.
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
doumount
polecenia, na przykładumount -l /rescue
.
Odłącz dysk od maszyny wirtualnej ratunkowej i przeprowadź wymianę dysku z oryginalną maszyną wirtualną.
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
Zatrzymaj lub cofnij przydział dotkniętej maszyny wirtualnej.
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.
Użyj Azure Portal, aby utworzyć migawkę dysku systemu operacyjnego maszyny wirtualnej, którego dotyczy problem.
Utwórz dysk z migawki dysku systemu operacyjnego i dołącz go do ratunkowej maszyny wirtualnej.
Po utworzeniu dysku rozwiąż problemy ze środowiskiem chroot na maszynie wirtualnej ratowniczej.
Uzyskaj dostęp do maszyny wirtualnej jako użytkownik główny za pomocą następującego polecenia:
sudo su -
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 dodmesg
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
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
Rozwiązywanie problemów ze środowiskiem chroot.
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
doumount
polecenia, na przykładumount -l /rescue
.
Odłącz dysk od maszyny wirtualnej ratunkowej i przeprowadź wymianę dysku z oryginalną maszyną wirtualną.
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.
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla