Why can't I start a VM after a disk error?

Løs almindelige VM-startfejl: En komplet guide

03/02/2024

Rating: 3.91 (5993 votes)

I en verden, der i stigende grad er afhængig af digital infrastruktur, er virtuelle maskiner (VM'er) blevet rygraden i mange virksomheders IT-drift. Platforme som Microsofts Hyper-V, VMware vSphere og Microsoft Azure tilbyder robuste og stabile miljøer, men selv de mest pålidelige systemer kan støde på problemer. Et af de mest frustrerende scenarier for en systemadministrator er, når en kritisk VM nægter at starte, stoppe eller reagere, hvilket efterlader den i en helt ubrugelig tilstand. Denne situation kan skyldes en lang række underliggende årsager, fra simple konfigurationsfejl til mere komplekse lager- eller netværksproblemer. I denne artikel vil vi fungere som din tekniske 'læge', diagnosticere de almindelige symptomer og give dig en række gennemprøvede 'behandlinger' til at genoplive dine virtuelle maskiner.

What if a task fails for a vSphere virtual machine?
A task fails for a vSphere Virtual Machine that is being processed by Veeam Backup & Replication with the error: Error: The operation is not allowed in the current state. A related error can be seen in the vSphere Client for the VM:
Indholdsfortegnelse

Den berygtede 'Failed to Change State'-fejl i Hyper-V

En af de mest almindelige lidelser, der rammer Hyper-V-administratorer, er en fejl, der forhindrer en VM i at ændre sin tilstand. Når du forsøger at starte, stoppe eller nulstille maskinen, mødes du af en fejlmeddelelse, der typisk lyder:

"The application encountered an error while attempting to change the state of the virtual machine. VM-name Failed to change state. The operation cannot be performed while the object is in its current state."

Denne fejl låser VM'en fuldstændigt og gør det umuligt selv at redigere dens indstillinger. Årsagen er næsten altid, at den tilknyttede Worker Process (vmwp.exe) er gået i stå og ikke reagerer. Løsningen er at tvinge denne proces til at lukke. Her er flere metoder til at opnå dette.

Metode 1: Find og afslut processen manuelt

Hver kørende VM har sin egen unikke vmwp.exe-proces. For at undgå at lukke den forkerte, skal du først identificere din problematiske VMs unikke identifikator, kendt som dens GUID (Globally Unique Identifier).

Trin 1: Find din VMs GUID

  1. Åbn Hyper-V Manager, højreklik på din Hyper-V-vært i venstre rude, og vælg "Hyper-V Settings".
  2. Under "Server"-sektionen, klik på "Virtual Machines". Her ser du standardstien, hvor dine VM-konfigurationsfiler er gemt.
  3. Naviger til denne sti i Stifinder. Du vil se en mappe for hver af dine VM'er.
  4. Åbn mappen, der svarer til navnet på din problematiske VM. Inde i denne mappe finder du filer og en undermappe, hvis navne er en lang streng af tal og bogstaver (f.eks. 3C555937-A999-4542-B77E-FD69488B8579). Dette er din VMs GUID. Kopier dette navn.

Trin 2: Afslut processen via Jobliste

  1. Tryk på Ctrl+Alt+Delete og åbn Jobliste (Task Manager).
  2. Gå til fanen "Detaljer" (Details).
  3. Find den vmwp.exe-proces, der har VM'ens GUID angivet i kolonnen "Brugernavn" (User name).
  4. Marker denne proces og klik på "Afslut opgave" (End Task). Bekræft, at du vil afslutte processen.

Efter et øjeblik skulle VM'ens status i Hyper-V Manager ændre sig til "Off". Nu kan du prøve at starte den igen.

Metode 2: Brug af alternative værktøjer som Process Explorer og PowerShell

Hvis du foretrækker mere avancerede værktøjer, kan både Process Explorer og PowerShell løse opgaven effektivt.

Process Explorer

Process Explorer er et gratis værktøj fra Microsoft, der giver et dybere indblik end den almindelige Jobliste.

Why did OS provisioning fail for VM 0?
OS Provisioning failed for VM ' {0}' because the guest OS is currently being provisioned. OS provisioning for VM ' {0}' failed. Error details: {1} Make sure the image has been properly prepared (generalized). Instructions for Windows. SSH host key generation failed. Error details: {0}. To resolve this issue verify if Linux agent is set up properly.
  1. I Hyper-V Manager, åbn indstillingerne for din fastlåste VM.
  2. Find sektionen for harddisken ("Hard Drive") og kopier den fulde sti til den virtuelle harddiskfil (.vhdx).
  3. Åbn Process Explorer og klik på kikkert-ikonet ("Find Handle or DLL").
  4. Indsæt stien til harddisken i søgefeltet. Søgeresultatet vil vise den tilknyttede vmwp.exe-proces.
  5. Højreklik på processen og vælg "Kill Process".

PowerShell

For dem, der er komfortable med kommandolinjen, tilbyder PowerShell en hurtig og scriptbar løsning.

  1. Åbn Windows PowerShell som administrator.
  2. Først gemmer vi VM'ens GUID i en variabel. Erstat "Dit_VM_Navn" med navnet på din VM:
    $VMGUID = (Get-VM “Dit_VM_Navn”).Id
  3. Find den specifikke proces, der er knyttet til dette GUID:
    $VMWMProc = (Get-WmiObject Win32_Process | ? {$_.Name -match ‘VMWP’ -and $_.CommandLine -match $VMGUID})
  4. Afslut nu processen med magt:
    Stop-Process ($VMWMProc.ProcessId) -Force

Andre almindelige årsager til startproblemer

Selv efter at have afsluttet processen, kan en VM stadig nægte at starte. Dette kan skyldes andre underliggende problemer relateret til lager, netværk eller konfiguration.

Disk- og lagerfejl

Mangel på diskplads eller korruption i filsystemet kan forhindre en VM i at starte. Kør følgende kommandoer i en administrativ kommandoprompt på Hyper-V-værten for at scanne og reparere systemfiler:

sfc /scannow
dism /online /cleanup-image /restorehealth

Hvis problemet fortsætter, kan det være nødvendigt at køre en diskkontrol (chkdsk) på den virtuelle harddisk. Dette gøres ved at mounte en Windows-installations-ISO til VM'en, boote fra den i reparationstilstand og køre chkdsk /f /r c: fra kommandoprompten.

Netværksadapter-konflikter

En forkert konfigureret virtuel switch kan forhindre en VM i at starte. Gå ind i VM'ens indstillinger og tjek under "Network Adapter". Hvis der står "Configuration Error" under "Virtual Switch", betyder det, at den switch, VM'en var tilsluttet, ikke længere eksisterer eller er fejlkonfigureret. Vælg en gyldig switch fra listen for at løse problemet.

Problemer i andre virtualiseringsmiljøer

Udfordringer med VM'er er ikke eksklusive for Hyper-V. Både VMware vSphere og Microsoft Azure har deres egne unikke fejlkilder.

VMware vSphere: Fejl ved oprettelse af Snapshot

En almindelig årsag til, at backup-jobs fejler i vSphere-miljøer, er manglende evne til at oprette et snapshot af en VM. Før du fejlfinder din backup-software, skal du altid prøve at oprette et snapshot manuelt i vSphere Client. Hvis dette fejler, kan årsagerne være:

  • VM'en er låst i en "shutting down"-tilstand.
  • VM'en er i gang med en Storage vMotion-migrering.
  • En PCI-enhed er direkte tilknyttet (passthrough) til VM'en.

Når du kan oprette og slette et snapshot manuelt, vil dit backup-job sandsynligvis også fungere.

Why can't I start a VM after a disk error?
The disk errors can cause your VM to get stuck in the Start/Stop state. To fix the disk errors, open Command Prompt and type: If you still can’t start your VM after fixing the disk errors, follow this method: In the Virtual BIOS, make sure that DVD-ROM is selected as the first boot device. Start the VM from the ISO image. Select Repair mode.

Azure VM Provisioning Fejlkoder

Når du opretter en VM i Azure, kan en lang række fejl opstå. Disse fejl er ofte meget specifikke. I stedet for at liste dem alle, er her en tabel, der kategoriserer de mest almindelige problemer:

FejlkategoriEksempel på fejlkodeBeskrivelseTypisk løsning
AllokeringAllocationFailedAzure kunne ikke finde ledige computerressourcer (CPU/RAM) i den valgte region eller klynge.Prøv en mindre VM-størrelse, en anden Azure-region, eller vent og prøv igen senere.
Disk/LagerDiskBlobNotFoundDen specificerede virtuelle harddisk (VHD) blev ikke fundet på lagerkontoen.Verificer, at stien til VHD-blob'en er korrekt, og at filen ikke er blevet slettet eller flyttet.
KonfigurationInvalidParameterEn af de angivne værdier, f.eks. brugernavn, adgangskode eller netværksindstilling, er ugyldig.Læs fejlmeddelelsens detaljer for at identificere den forkerte parameter og ret den.
OS ProvisioningOSProvisioningTimedOutKlargøringen af gæsteoperativsystemet tog for lang tid og timede ud.Sørg for, at dit custom image er korrekt forberedt og er blevet generaliseret (f.eks. med Sysprep for Windows).

Forebyggelse er den bedste medicin: Vigtigheden af backup

Selv når du succesfuldt løser et problem, der har fået din VM til at gå i stå, er der altid en risiko for, at data på den virtuelle disk er blevet beskadiget eller korrumperet under processen. Den absolut bedste forsikring mod datatab er en solid og regelmæssig backup-strategi. At have en nylig, pålidelig kopi af din VM betyder, at du altid kan gendanne den til en fungerende tilstand, uanset hvilken fejl der opstår. Dette sparer ikke kun potentielt tabte data, men også utallige timers fejlfinding.

Ofte Stillede Spørgsmål (FAQ)

Hvad er den hurtigste måde at løse en fastlåst Hyper-V VM på?

At tvinge den tilknyttede vmwp.exe-proces til at lukke er næsten altid den hurtigste og mest effektive metode. Brug af PowerShell-kommandoerne, som beskrevet ovenfor, er ofte den hurtigste måde at gøre det på, når du har identificeret VM'ens navn.

Min VM siger 'Configuration Error' på netværksadapteren. Hvad gør jeg?

Dette indikerer et problem med din virtuelle switch. Gå til VM'ens indstillinger, vælg "Network Adapter", og i dropdown-menuen for "Virtual switch", vælg en gyldig, fungerende virtuel switch, som findes på din Hyper-V-vært.

Hvorfor er det vigtigt at 'generalisere' et image før brug i Azure?

At generalisere et image (f.eks. med Sysprep på Windows) fjerner unikke, maskinspecifikke oplysninger som computerens navn og sikkerheds-ID'er (SID). Dette er afgørende for, at Azure kan bruge imaget som en skabelon til at oprette flere, nye og unikke VM'er. En OSProvisioningTimedOut-fejl skyldes ofte, at et image ikke er blevet generaliseret korrekt.

Kan jeg bare slette en VM, der er gået i stå, og starte forfra?

Ja, dette kan være en sidste udvej. Det er dog vigtigt at forstå, at når du sletter en VM i Hyper-V Manager, sletter du kun konfigurationsfilen, ikke den virtuelle harddisk (.vhdx). Sørg for at have en backup af din virtuelle harddisk, før du sletter VM-konfigurationen. Derefter kan du oprette en helt ny VM og tilknytte den eksisterende diskfil til den.

Hvis du vil læse andre artikler, der ligner Løs almindelige VM-startfejl: En komplet guide, kan du besøge kategorien Sundhed.

Go up