Share via


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

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 gebruiken. U hoeft de taak niet meer handmatig uit te voeren. Deze scripts vereenvoudigen het herstelproces en stellen zelfs onervaren gebruikers in staat hun Linux-VM eenvoudig te herstellen.

ALAR maakt gebruik van de VM-reparatie-extensie die wordt beschreven in Een Linux-VM herstellen met behulp van de azure-opdrachten voor het herstellen van virtuele machines.

ALAR behandelt de volgende reparatiescenario's:

  • Onjuiste indeling /etc/fstab syntaxis fout ontbrekende schijf
  • Beschadigde initrd of ontbrekende initrd regel 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 bestand /etc/fstab verwijderd die niet nodig zijn om een systeem op te starten. Eerst wordt een kopie van het oorspronkelijke bestand gemaakt ter referentie. Wanneer het besturingssysteem wordt gestart, kan de beheerder de fstab bewerken om eventuele fouten te corrigeren die het opnieuw opstarten van het systeem eerder niet toestaat.

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

Kernel

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

Zie Een virtuele Azure Linux-machine herstellen van kernelgerelateerde opstartproblemen voor meer informatie over berichten die kunnen worden geregistreerd op de seriële console voor kernelgerelateerde opstartgebeurtenissen.

Initrd

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

Als u de initrd of initramfs correct wilt maken, voegt u de modules hv_vmbus, hv_netvscen hv_storvsc toe aan de afbeelding.

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

VFS wordt niet gesynchroniseerdNee werkt 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 bestand grub.cfg opnieuw te genereren.

efifix

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

Auditd

Gebruik deze actie als uw VM onmiddellijk na het opstarten wordt afgesloten vanwege de configuratie van de controle-daemon. Met deze actie wijzigt u de configuratie van de audit-daemon (in het bestand /etc/audit/auditd.conf ) door de HALT waarde die is geconfigureerd voor action parameters te wijzigen in SYSLOG, waardoor het systeem niet wordt afgesloten. Als in een LVM-omgeving (Logical Volume Manager) het logische volume met de auditlogboeken 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.

ALAR gebruiken

De ALAR-scripts gebruiken de opdracht voor de reparatie-extensie run en de bijbehorende --run-id optie. De waarde van de --run-id optie voor het geautomatiseerde herstel is linux-alar2. Voer de volgende stappen uit om een Virtuele Linux-machine te herstellen 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 
    

    Opmerking

    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 die de verbroken VM bevat.

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

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

  • RESCUE-PASS: Het wachtwoord voor RESCUE-UID, tussen enkele aanhalingstekens. Bijvoorbeeld: 'password!234'.

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

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

    Opmerking

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

Beperking

Klassieke VM's worden niet ondersteund.

Volgende stappen

Als u een fout ondervindt of een verbetering 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 Feedback-community van Azure.