none
Hyper-V 2012 R2 Prüfpunkte und Prüfpunkt-Struktur löschen RRS feed

  • Frage

  • Hallo,

    ich kann diese etwas irritierenden Prüfpunkte und Prüfpunkt-Struktur (durch löschen) nicht bereinigen:

    

    Folgende Fehlermeldung beispielsweise.

    Wie biegt man die Prüfpunkt-Struktur wieder hin? Außerdem gehören die hier (auch bei dieser VM) nicht auf C: sondern auf eine Netzwerkfreigabe (unsere Enclosure mit Storage). Den Pfad würde ich gerne auch ändern. Weiterhin, wie kann ich herausfinden, ob im Speicherort für virtuelle Festplatten eventuell Dateien welche nicht (mehr) benötigt werden gelöscht werden können. Das / unser Storage bzw. der storage im enclosure läuft nämlich langsam voll :-(

    Ggf. Dank vorab

    DL

    Freitag, 7. Juni 2019 08:55

Antworten

  • Moin,

    wenn alle Stricke reißen, kannst Du die VM mit der gleichen Konfig neu anlegen und die Platten einfach mergen. Da die VM an sich funktioniert, scheint die Parent-Child-Kette ja nicht unterbrochen zu sein, aber sich von der Snapshot-Kette "gelöst" zu haben.

    Mit diesem Code-Schnipsel kannst Du die Festplatten-Kette für alle VHDs auflsiten:

    $vm = "DEVRM" #hier den Namen der VM eintragen
    
    function Get-ParentVHD ($path) {
        $ppath = (Get-VHD $path).ParentPath
        if ([string]::IsNullOrEmpty($ppath)) {
            $path
        } else {
            $ppath
        }
    }
    
    foreach ($vhd in (Get-VM $vm | Get-VMHardDiskDrive)) {
        Write-Host "Bus: $($vhd.ControllerType)$($vhd.ControllerLocation) Ctr: $($vhd.ControllerNumber) Tgt: $($vhd.DiskNumber)"
        $xpath = $vhd.Path
        do {
            Write-Host $xpath
            $zpath = $xpath
            $xpath = Get-ParentVHD $xpath
        } until ($zpath -eq $xpath) 
    }

    und dann einfach jeweils von oben nach unten mergen:

    Get-VHD X:\Pfad\<GUID>.avhdx | Merge-VHD -Force -Confirm:$false

    bis alle .AVHDX weg sind und Du bei der VHDX angekommen bist.

    Anschließend die VHDX in die Konfig der VM reinhängen, fertig.


    Evgenij Smirnov

    http://evgenij.smirnov.de

    Montag, 17. Juni 2019 13:47

Alle Antworten

  • Moin,

    ist für diese Maschine Hyper-V-Replika aktiviert? Falls ja, solltest Du das einmal auflösen und nach Bereinigung des Snapshot Trees neu aufbauen.

    Den Pfad für Snapshots kannst Du nur ändern, wenn die VM aus ist.


    Evgenij Smirnov

    http://evgenij.smirnov.de

    Samstag, 8. Juni 2019 10:50
  • Nastrowje (Wodka) Smirnov :-)

    Ja, für diese Maschine ist / war Hyper-V-Replika aktiviert; ich habe Hyper-V-Replika heute mal deaktiviert und konnte einige Prüfpunkte und Prüfpunkteunterstrukturen (nach dem Herunterfahren der Maschine) entfernen/löschen.

    Leider nicht ganz: Im Moment sieht das Ganze so aus und ich folgende Fehlermeldung:

    

    Prüfpunkt und Prüfpunktunterstruktur, dann der Versuch den veralteten Prüfpunkt zu löschen:

    ...

    Dann die Fehlermeldung, dass die Datei nicht mehr da wäre:

    In dem Ordner sieht es wie folgt aus, die Datei fehlt eventuelle (auch andere virtuelle Maschinen nutzen diesen Ordern):

    Wie kann ich dem Hyper-V beibringen, dass die Datei offensichtlich nicht mehr existiert und ich gerne die Oberfläche (GUI) vom Hyper-V gerne "bereinigt" bzw. richtig hätte, bevor ich beispielsweise wieder einen (aktuellen) Prüfpunkt erstelle?!

    Danke vorab,

    DL

    Freitag, 14. Juni 2019 07:23
  • Guten Morgen Herr Smirnov,

    haben Sie zwischenzeitlich noch ein Hinweis oder eine Anleitung zu der am Freitag, den 14. Juni um 07:23 dann nochmal veröffentlichten Prüfpunkt-Struktur und dem Prüfpunkt der nicht mehr auf dem Datenträger vorhanden ist? Wie bekommt man das wieder ordentlich, wäre die Frage.

    Gegebenen Falls Dank.

    DL

    Montag, 17. Juni 2019 07:43
  • Moin,

    wenn alle Stricke reißen, kannst Du die VM mit der gleichen Konfig neu anlegen und die Platten einfach mergen. Da die VM an sich funktioniert, scheint die Parent-Child-Kette ja nicht unterbrochen zu sein, aber sich von der Snapshot-Kette "gelöst" zu haben.

    Mit diesem Code-Schnipsel kannst Du die Festplatten-Kette für alle VHDs auflsiten:

    $vm = "DEVRM" #hier den Namen der VM eintragen
    
    function Get-ParentVHD ($path) {
        $ppath = (Get-VHD $path).ParentPath
        if ([string]::IsNullOrEmpty($ppath)) {
            $path
        } else {
            $ppath
        }
    }
    
    foreach ($vhd in (Get-VM $vm | Get-VMHardDiskDrive)) {
        Write-Host "Bus: $($vhd.ControllerType)$($vhd.ControllerLocation) Ctr: $($vhd.ControllerNumber) Tgt: $($vhd.DiskNumber)"
        $xpath = $vhd.Path
        do {
            Write-Host $xpath
            $zpath = $xpath
            $xpath = Get-ParentVHD $xpath
        } until ($zpath -eq $xpath) 
    }

    und dann einfach jeweils von oben nach unten mergen:

    Get-VHD X:\Pfad\<GUID>.avhdx | Merge-VHD -Force -Confirm:$false

    bis alle .AVHDX weg sind und Du bei der VHDX angekommen bist.

    Anschließend die VHDX in die Konfig der VM reinhängen, fertig.


    Evgenij Smirnov

    http://evgenij.smirnov.de

    Montag, 17. Juni 2019 13:47