Udostępnij za pośrednictwem


Naprawianie maszyny wirtualnej z systemem Linux za pomocą usługi Azure Linux Auto Repair (ALAR)

Dotyczy: ✔️ maszyny wirtualne z systemem Linux

Przy następnym uruchomieniu naprawy na maszynie wirtualnej z systemem Linux platformy Azure możesz zautomatyzować zadanie, umieszczając skrypty automatycznej naprawy systemu Linux (ALAR) platformy Azure, aby działały. Nie trzeba już uruchamiać zadania ręcznie. Te skrypty upraszczają proces odzyskiwania i umożliwiają nawet niedoświadczonym użytkownikom łatwe odzyskiwanie maszyny wirtualnej z systemem Linux.

Usługa ALAR korzysta z rozszerzenia naprawy maszyny wirtualnej opisanego w temacie Naprawianie maszyny wirtualnej z systemem Linux przy użyciu poleceń naprawy maszyny wirtualnej platformy Azure.

Usługa ALAR obejmuje następujące scenariusze naprawy:

  • Błędnie sformułowany /etc/fstab składni brak dysku
  • Uszkodzony initrd lub brak wiersza initrd w /boot/grub/grub.cfg
  • Ostatnio zainstalowane jądro nie jest możliwe do rozruchu
  • Konsola szeregowa i szeregowy GRUB są niepoprawnie skonfigurowane lub brakuje
  • Instalacja lub konfiguracja PROGRAMU GRUB/EFI została uszkodzona

Akcje ALAR

fstab

Ta akcja usuwa wszystkie wiersze w pliku /etc/fstab , które nie są potrzebne do rozruchu systemu. Najpierw kopia oryginalnego pliku jest nawiązywana do odwołania. Po uruchomieniu systemu operacyjnego administrator może edytować plik fstab, aby poprawić wszelkie błędy, które nie zezwalały na ponowne uruchomienie systemu przed.

Aby uzyskać więcej informacji na temat problemów z źle sformułowanym plikiem /etc/fstab , zobacz Rozwiązywanie problemów z uruchamianiem maszyny wirtualnej z systemem Linux, ponieważ błędy fstab.

jądro

Ta akcja zmienia domyślne jądro. Skrypt zastępuje uszkodzone jądro poprzednio zainstalowaną wersją.

Aby uzyskać więcej informacji na temat komunikatów, które mogą być rejestrowane w konsoli szeregowej dla zdarzeń uruchamiania związanych z jądrem, zobacz Jak odzyskać maszynę wirtualną z systemem Linux platformy Azure z powodu problemów z rozruchem powiązanym z jądrem.

initrd

Tej akcji można użyć do naprawienia initrd lub initramfs, który jest uszkodzony lub niepoprawnie utworzony.

Aby poprawnie utworzyć initrd lub initramfs, dodaj moduły hv_vmbus, hv_netvsci hv_storvsc do obrazu.

Problemy z uruchamianiem związane z initrd mogą pojawić się jako następujące zarejestrowane objawy.

Brak synchronizacji systemu plików VFSNie znaleziono działającego inicjowania

W obu przypadkach następujące informacje są rejestrowane przed zarejestrowaniem wpisów błędu.

Rozpakowywanie nie powiodło się

serialconsole

Ta akcja poprawia niepoprawną lub źle sformułowaną konfigurację konsoli szeregowej dla jądra systemu Linux lub GRUB. Zalecamy uruchomienie tej akcji w następujących przypadkach:

  • Podczas uruchamiania maszyny wirtualnej nie jest wyświetlane menu GRUB.
  • Żadne informacje dotyczące systemu operacyjnego nie są zapisywane w konsoli szeregowej.

grubfix

Tej akcji można użyć do ponownej instalacji programu GRUB i ponownego wygenerowania pliku grub.cfg .

efifix

Tej akcji można użyć do ponownego zainstalowania wymaganego oprogramowania do rozruchu z maszyny wirtualnej GEN2. Plik grub.cfg jest również ponownie wygenerowany.

poddane inspekcji

Jeśli maszyna wirtualna zostanie natychmiast zamknięta po uruchomieniu ze względu na konfigurację demona inspekcji, użyj tej akcji. Ta akcja modyfikuje konfigurację demona inspekcji (w pliku /etc/auditd.conf ), zmieniając HALT wartość skonfigurowaną dla dowolnych action parametrów na SYSLOG, co nie wymusza zamknięcia systemu. W środowisku Menedżera woluminów logicznych (LVM), jeśli wolumin logiczny zawierający dzienniki inspekcji jest pełny i jest dostępne miejsce w grupie woluminów, wolumin logiczny zostanie również rozszerzony o 10% bieżącego rozmiaru. Jeśli jednak nie używasz środowiska LVM lub nie ma dostępnego miejsca, zostanie zmieniony tylko plik konfiguracji.

Jak używać usługi ALAR

Skrypty ALAR używają polecenia naprawy rozszerzenia run i jego --run-id opcji. Wartość --run-id opcji automatycznego odzyskiwania to linux-alar2. Aby naprawić maszynę wirtualną z systemem Linux przy użyciu skryptu usługi ALAR, wykonaj następujące kroki:

  1. Tworzenie maszyny wirtualnej ratowniczej:

    az vm repair create --verbose -g RG-NAME -n VM-NAME --repair-username RESCUE-UID --repair-password RESCUE-PASS --copy-disk-name DISK-COPY
    
  2. Uruchom skrypt z jedną z akcji ALAR na maszynie wirtualnej ratowniczej:

    az vm repair run --verbose -g RG-NAME -n VM-NAME --run-id linux-alar2 --parameters ACTION --run-on-repair
    
  3. Zamień dyski systemu operacyjnego i usuń zasoby tymczasowe:

    az vm repair restore --verbose -g RG-NAME -n VM-NAME 
    

    Uwaga

    Oryginalne i nowe dyski nie zostaną usunięte.

Poniżej przedstawiono wyjaśnienia parametrów w powyższych poleceniach:

  • RG-NAME: nazwa grupy zasobów zawierającej uszkodzoną maszynę wirtualną.

  • VM-NAME: nazwa uszkodzonej maszyny wirtualnej.

  • RESCUE-UID: użytkownik utworzony na maszynie wirtualnej naprawy na potrzeby logowania. Jest to odpowiednik użytkownika utworzonego na nowej maszynie wirtualnej w witrynie Azure Portal.

  • RESCUE-PASS: hasło dla RESCUE-UIDelementu , ujęte w pojedynczy cudzysłów. Na przykład: 'password!234'.

  • DISK-COPY: nazwa kopii dysku systemu operacyjnego, która zostanie utworzona na podstawie uszkodzonej maszyny wirtualnej.

  • ACTION: zadanie skryptowe do uruchomienia, takie jak initrd lub fstab.

    Uwaga

    Możesz przekazać pojedyncze lub wiele operacji odzyskiwania. W przypadku wielu operacji należy je rozdzielić przecinkami bez spacji, takich jak fstab,initrd.

Ograniczenie

Klasyczne maszyny wirtualne nie są obsługiwane.

Następne kroki

Jeśli wystąpi błąd lub chcesz zażądać ulepszenia narzędzia ALAR, opublikuj komentarz w witrynie GitHub.

Najnowsze informacje o narzędziu ALAR można również znaleźć w witrynie GitHub.

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.