Dela via


Använda Azure Linux Auto Repair (ALAR) för att åtgärda en virtuell Linux-dator

Gäller för: ✔️ Virtuella Linux-datorer

Nästa gång du måste köra en reparation på din virtuella Azure Linux-dator (VM) kan du automatisera jobbet genom att använda ALAR-skript (Azure Linux Auto Repair) för att fungera åt dig. Du behöver inte längre köra jobbet manuellt. Dessa skript förenklar återställningsprocessen och gör det enkelt för oerfarna användare att återställa sin virtuella Linux-dator.

ALAR använder reparationstillägget för virtuella datorer som beskrivs i Reparera en virtuell Linux-dator med hjälp av reparationskommandona för virtuella Azure-datorer.

ALAR omfattar följande reparationsscenarier:

  • Felformaterad /etc/fstab syntaxfel saknas disk
  • Skadad initrd eller saknad initrd rad i /boot/grub/grub.cfg
  • Den senast installerade kerneln kan inte startas
  • Seriekonsolen och GRUB-serien är felaktigt konfigurerade eller saknas
  • GRUB/EFI-installation eller konfiguration skadad

ALAR-åtgärderna

fstab

Den här åtgärden tar bort alla rader i /etc/fstab-filen som inte behövs för att starta ett system. Först görs en kopia av den ursprungliga filen som referens. När operativsystemet startar kan administratören redigera fstab för att korrigera eventuella fel som inte tillät en omstart av systemet tidigare.

Mer information om problem med en felaktig /etc/fstab-fil finns i Felsöka startproblem för virtuella Linux-datorer på grund av fstab-fel.

kärna

Den här åtgärden ändrar standardkärnan. Skriptet ersätter den brutna kerneln med den tidigare installerade versionen.

Mer information om meddelanden som kan loggas på seriekonsolen för kernelrelaterade starthändelser finns i Så här återställer du en virtuell Azure Linux-dator från kernelrelaterade startproblem.

initrd

Den här åtgärden kan användas för att åtgärda en initrd eller initramfs som antingen är skadad eller felaktigt skapad.

Om du vill att initrd eller initramfs ska skapas korrekt lägger du till modulerna hv_vmbus, hv_netvscoch hv_storvsc till avbildningen.

Initrd-relaterade startproblem kan visas som följande loggade symtom.

Synkroniserar inte VFSIngen fungerande init hittades

I båda fallen loggas följande information innan felposterna loggas.

Det gick inte att packa upp

serialconsole

Den här åtgärden korrigerar en felaktig eller felaktig seriekonsolkonfiguration för Linux-kerneln eller GRUB. Vi rekommenderar att du kör den här åtgärden i följande fall:

  • Ingen GRUB-meny visas vid start av den virtuella datorn.
  • Ingen operativsystemrelaterad information skrivs till seriekonsolen.

grubfix

Den här åtgärden kan användas för att installera om GRUB och återskapa grub.cfg-filen .

efifix

Den här åtgärden kan användas för att installera om den programvara som krävs för att starta från en virtuell GEN2-dator. Filen grub.cfg återskapas också.

granskad

Om den virtuella datorn stängs av omedelbart vid start på grund av granskningsdaemonkonfigurationen använder du den här åtgärden. Den här åtgärden ändrar konfigurationen av granskningsdaemon (i filen /etc/audit/auditd.conf ) genom att ändra värdet HALT som konfigurerats för alla action parametrar till SYSLOG, vilket inte tvingar systemet att stängas av. I en LVM-miljö (Logical Volume Manager) utökas även den logiska volymen med 10 % av den aktuella storleken om den logiska volymen som innehåller granskningsloggarna är full och det finns tillgängligt utrymme i volymgruppen. Men om du inte använder en LVM-miljö eller om det inte finns något tillgängligt utrymme ändras bara konfigurationsfilen.

Viktigt!

Den här åtgärden ändrar den virtuella datorns säkerhetsstatus genom att ändra konfigurationen för granskningsdaemon så att problemet med avstängning av den virtuella datorn kan lösas. När den virtuella datorn körs och är tillgänglig måste du återställa granskningsdaemonkonfigurationen till det ursprungliga tillståndet. För detta ändamål skapas en säkerhetskopia av filen auditd.conf i /etc/audit av ALAR-åtgärden.

Så här använder du ALAR

ALAR-skripten använder kommandot för reparationstillägget run och dess --run-id alternativ. Värdet för --run-id alternativet för automatisk återställning är linux-alar2. Följ dessa steg för att åtgärda en virtuell Linux-dator med hjälp av ett ALAR-skript:

  1. Skapa en virtuell räddningsdator:

    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. Kör ett skript med någon av ALAR-åtgärderna på den virtuella räddningsdatorn:

    az vm repair run --verbose -g RG-NAME -n VM-NAME --run-id linux-alar2 --parameters ACTION --run-on-repair
    
  3. Byt operativsystemdiskar och ta bort de tillfälliga resurserna:

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

    Kommentar

    De ursprungliga och nya diskarna tas inte bort.

Här följer förklaringar till parametrarna i kommandona ovan:

  • RG-NAME: Namnet på resursgruppen som innehåller den skadade virtuella datorn.

  • VM-NAME: Namnet på den skadade virtuella datorn.

  • RESCUE-UID: Användaren som skapades på den virtuella reparationsdatorn för inloggning. Det motsvarar den användare som skapats på en ny virtuell dator i Azure Portal.

  • RESCUE-PASS: Lösenordet för RESCUE-UID, omgivet av enkla citattecken. Exempel: 'password!234'.

  • DISK-COPY: Namnet på os-diskkopian som ska skapas från den skadade virtuella datorn.

  • ACTION: En skriptuppgift som ska köras, till exempel initrd eller fstab.

    Kommentar

    Du kan skicka över en eller flera återställningsåtgärder. För flera åtgärder avgränsar du dem med kommatecken utan blanksteg, till exempel fstab,initrd.

Begränsning

Klassiska virtuella datorer stöds inte.

Nästa steg

Om du upplever en bugg eller vill begära en förbättring av ALAR-verktyget kan du publicera en kommentar på GitHub.

Du hittar också den senaste informationen om ALAR-verktyget på GitHub.

Kontakta oss för att få hjälp

Om du har frågor eller behöver hjälp skapar du en supportförfrågan eller frågar Azure community support. Du kan också skicka produktfeedback till Azure-feedbackcommunityn.