Comparto un pequeño pero útil script para administradores de Hyper-V. Su función es muy sencilla: identificar qué máquina virtual (VM) está utilizando un archivo VHDX en particular.
El Script
Get-VM | Get-VMHardDiskDrive |
Where-Object { $_.Path -eq "V:\Hyper-V\WS-W11LTSC\Virtual Hard Disks\WS-W11LTSC.vhdx" } |
Select-Object VMName, Path
¿Qué hace paso a paso?
| Paso | Comando | Descripción |
|---|---|---|
| 1 | Get-VM |
Obtiene todas las máquinas virtuales del host Hyper-V |
| 2 | Get-VMHardDiskDrive |
Por cada VM, lista todos sus discos duros virtuales |
| 3 | Where-Object { $_.Path -eq "..." } |
Filtra solo el disco que coincida con la ruta especificada |
| 4 | Select-Object VMName, Path |
Muestra únicamente el nombre de la VM y la ruta del disco |
¿Para qué sirve?
Este script es práctico en situaciones como:
-
Antes de mover o eliminar un VHDX – para saber qué VM lo está usando y evitar errores. -
Auditoría o inventario – para verificar qué máquinas están vinculadas a determinados discos. -
Resolución de conflictos – si intentas montar un disco y el sistema indica que ya está en uso.