Quali sono le possibili ragioni per cui Hyper-V non può compattare un VHD?

Sto ospitando diverse macchine virtuali su un host che esegue Hyper-V Server 2008 R2. I dischi sono stati originariamente forniti su un server diverso (2008, non R2) circa 16 mesi fa e sono stati migrati su questo server un anno fa. La maggior parte degli ospiti esegue Windows 7.

Recentemente ho confrontato la dimensione VHD allo spazio utilizzato riportto dall'ospite e ho notato che diverse macchine avevano file VHD che erano 50-100% più grandi di quanto effettivamente necessario. Così ho deciso di provare a compattare i file VHD per liberare spazio sull'host. Ho seguito le istruzioni che ho trovato su internet, approssimativamente come segue:

  • Windows 7 sempre attaccare VHD
  • Disk2VHD e Hyper-V
  • Come creare un file VHD da una cartella?
  • Esport VM da Hyper-V come OVF
  • Come devo convertire un disco fisico in un VHD per l'utilizzo con VirtualPC?
  • Come convertire un file HDD VMWare VMDK in un file HyperV VHD?
    1. Esegui CHKDSK nella macchina ospite
    2. Eseguire una deframmentazione nella macchina guest (defrag incorporato di Windows)
    3. Chiudi l'ospite
    4. Aprire lo strumento "Modifica disco …" in Hyper-V Manager
    5. Seleziona il VHD di interesse e sceglie di comprimerlo

    La prima volta che ho provato questo, ha funzionato perfettamente e ha ridotto la dimensione del mio VHD di circa il 50%. Ma per i dischi di each altro ospite, ho questo messaggio di errore:

    The server encountered an error trying to edit the virtual disk. 'The system failed to compact 'C:\example.vhd'. Error Code: The requested operation could not be completed due to a file system limitation 

    Nessun ospite ha la compressione NTFS abilitata. Non ci sono istantanee di questi dischi. Che altro potrebbe causare questo errore?

    Modifica : punti bonus per chiunque descrive una soluzione per mantenere in automatico i tag dinamici VHD.

  • Come posso riservare la RAM sulla partizione host Hyper-V 2012 solo per i VM?
  • Windows XP Pro non è un buon cittadino di Hyper-V?
  • Hyper-V su 2012R2 HyperV Edition o 2008R2 Standard Edition?
  • Disk2VHD e Hyper-V
  • Limitazioni del processre Hyper-V
  • 2 Solutions collect form web for “Quali sono le possibili ragioni per cui Hyper-V non può compattare un VHD?”

    Rimuovere le copie shadow dall'ospite. Lo farà!

     vssadmin delete shadows /all 

    Nell'interesse del consolidamento di ricerca su Internet: Finalmente ha trovato questo collegamento come un approccio che ha funzionato quando HyperV compact non ha fatto: https://fiddley.wordpress.com/2014/01/27/dynamicamente-expanding-vhd-not-compacting- in-iper-v /

    Nel prompt dei comandi di amministratore, eseguire DISKPART

    Al prompt dei comandi DISKPART

     select vdisk File=”I:\path\to\your.vhd” attach vdisk readonly compact vdisk detach vdisk 
    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.