Delen via


Azure Linux Auto Repair (ALAR) gebruiken om een Virtuele Linux-machine te herstellen

Van toepassing op: ✔️ Virtuele Linux-machines

De volgende keer dat u een reparatie moet uitvoeren op uw virtuele Azure Linux-machine (VM), kunt u de taak automatiseren door de Azure Linux Auto Repair-scripts (ALAR) voor u te laten werken. U hoeft de taak niet meer handmatig uit te voeren. Deze scripts vereenvoudigen het herstelproces en stellen zelfs onervaren gebruikers in staat om hun Linux-VM eenvoudig te herstellen.

ALAR maakt gebruik van de VM-herstelextensie die wordt beschreven in Een Virtuele Linux-machine herstellen met behulp van de herstelopdrachten van virtuele Azure-machines.

ALAR behandelt de volgende herstelscenario's:

  • Ongeldige /etc/fstab-syntaxisfout ontbrekende schijf
  • Beschadigde initrd of ontbrekende initrd lijn in de /boot/grub/grub.cfg
  • De laatst geïnstalleerde kernel kan niet worden opgestart
  • Seriële console en GRUB serial zijn onjuist geconfigureerd of ontbreken
  • GRUB/EFI-installatie of configuratie beschadigd

De ALAR-acties

fstab

Met deze actie worden alle regels in het /etc/fstab-bestand verwijderd die niet nodig zijn om een systeem op te starten. Eerst wordt een kopie van het oorspronkelijke bestand ter referentie gemaakt. Wanneer het besturingssysteem wordt gestart, kan de beheerder de fstab bewerken om eventuele fouten te corrigeren waardoor het systeem niet eerder opnieuw is opgestart.

Zie Opstartproblemen met linux-VM's oplossen vanwege fstab-fouten voor meer informatie over problemen met een onjuist ingedeeld /etc/fstab-bestand.

kern

Met deze actie wordt de standaardkernel gewijzigd. Het script vervangt de verbroken kernel door de eerder geïnstalleerde versie.

Voor meer informatie over berichten die mogelijk zijn aangemeld op de seriële console voor opstartgebeurtenissen die betrekking hebben op kernels, raadpleegt u Hoe u een virtuele Azure Linux-machine kunt herstellen na opstartproblemen met kernels.

initrd

Deze actie kan worden gebruikt om een initrd of initramfs op te lossen die beschadigd of onjuist is gemaakt.

Als u de initrd of initramfs correct wilt ophalen, voegt u de modules hv_vmbusen hv_storvsc hv_netvscde afbeelding toe.

Initrd-gerelateerde opstartproblemen kunnen worden weergegeven als de volgende geregistreerde symptomen.

VFS wordt niet gesynchroniseerdEr is geen werkende init gevonden

In beide gevallen wordt de volgende informatie vastgelegd voordat de foutvermeldingen worden geregistreerd.

Uitpakken is mislukt

serialconsole

Deze actie corrigeert een onjuiste of onjuiste seriële consoleconfiguratie voor de Linux-kernel of GRUB. We raden u aan deze actie uit te voeren in de volgende gevallen:

  • Er wordt geen GRUB-menu weergegeven bij het opstarten van de VM.
  • Er wordt geen informatie over het besturingssysteem naar de seriële console geschreven.

grubfix

Deze actie kan worden gebruikt om GRUB opnieuw te installeren en het grub.cfg-bestand opnieuw te genereren.

efifix

Deze actie kan worden gebruikt om de vereiste software opnieuw te installeren om vanaf een GEN2-VM op te starten. Het grub.cfg-bestand wordt ook opnieuw gegenereerd.

gecontroleerd

Als uw VIRTUELE machine onmiddellijk wordt afgesloten na het opstarten vanwege de configuratie van de controle-daemon, gebruikt u deze actie. Met deze actie wijzigt u de configuratie van de audit-daemon (in het bestand /etc/audit/auditd.conf ) door de HALT waarde te wijzigen die is geconfigureerd voor parameters action SYSLOGin, waardoor het systeem niet wordt afgesloten. Als in een LVM-omgeving (Logical Volume Manager) het logische volume dat de auditlogboeken bevat vol is en er ruimte beschikbaar is in de volumegroep, wordt het logische volume ook uitgebreid met 10% van de huidige grootte. Als u echter geen LVM-omgeving gebruikt of er geen beschikbare ruimte is, wordt alleen het configuratiebestand gewijzigd.

Belangrijk

Met deze actie wordt het beveiligingspostuur van de VIRTUELE machine gewijzigd door de configuratie van de controledaemon te wijzigen, zodat het probleem met het afsluiten van de VM kan worden opgelost. Zodra de VIRTUELE machine wordt uitgevoerd en toegankelijk is, moet u de configuratie van de controledaemon terugzetten naar de oorspronkelijke status. Voor dit doel wordt een back-up van het bestand auditd.conf gemaakt in /etc/audit door de ALAR-actie.

ALAR gebruiken

De ALAR-scripts gebruiken de opdracht voor de reparatie-extensie run en --run-id de bijbehorende optie. De waarde van de --run-id optie voor het geautomatiseerde herstel is linux-alar2. Volg deze stappen om een Virtuele Linux-machine op te lossen met behulp van een ALAR-script:

  1. Een reddings-VM maken:

    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. Voer een script uit met een van de ALAR-acties op de herstel-VM:

    az vm repair run --verbose -g RG-NAME -n VM-NAME --run-id linux-alar2 --parameters ACTION --run-on-repair
    
  3. Wissel de besturingssysteemschijven en verwijder de tijdelijke resources:

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

    Notitie

    De oorspronkelijke en nieuwe schijven worden niet verwijderd.

Hier volgen verklaringen voor de parameters in de bovenstaande opdrachten:

  • RG-NAME: De naam van de resourcegroep met de verbroken VM.

  • VM-NAME: De naam van de verbroken VM.

  • RESCUE-UID: De gebruiker die is gemaakt op de herstel-VM voor aanmelding. Dit is het equivalent van de gebruiker die is gemaakt op een nieuwe VIRTUELE machine in Azure Portal.

  • RESCUE-PASS: Het wachtwoord voor RESCUE-UIDtussen enkele aanhalingstekens. Voorbeeld: 'password!234'.

  • DISK-COPY: De naam van de kopie van de besturingssysteemschijf die wordt gemaakt op basis van de verbroken VM.

  • ACTION: Een scripttaak die moet worden uitgevoerd, zoals initrd of fstab.

    Notitie

    U kunt één of meerdere herstelbewerkingen doorgeven. Voor meerdere bewerkingen kunt u deze afbakenen met komma's zonder spaties, zoals fstab,initrd.

Beperking

Klassieke VM's worden niet ondersteund.

Volgende stappen

Als u een fout ondervindt of een uitbreiding van het ALAR-hulpprogramma wilt aanvragen, plaatst u een opmerking op GitHub.

U vindt ook de meest recente informatie over het ALAR-hulpprogramma op GitHub.

Contacteer ons voor hulp

Als u vragen hebt of hulp nodig hebt, maak een ondersteuningsaanvraag of vraag de Azure-communityondersteuning. U kunt ook productfeedback verzenden naar de Azure-feedbackcommunity.