如何快速向HyperV VM批量添加相同ISO映像

2023年 8月 18日 63.9k 0

如何快速向Hyper-V VM批量添加相同ISO映像-1

IT Pro 在建立 Hyper-V 实验环境时,经常需要为多个 VM 挂载同一个 ISO 映像。例如,要建立有多台 Exchange 2016 服务器的实验环境,就需要将 Exchange 2016 的安装映像挂载到多个虚拟机。

为了避免重复繁杂的操作,我们可以事先将Hyper-V VM 定为相同的命名约定,把 Exchange 2016 服务器的 VM 命名为以 E16 开头。这样就可以直接使用 PowerShell 的 Get-VM cmdlet 来使用通配符获取 VM 集合,以方便批量添加 ISO 映像。

批量添加ISO映像

以下就是挂载相同 ISO 的 PowerShell 示例:

Get-VM E16* | Get-VMDVDDrive | Set-VMDvdDrive -Path "F:\ISOs\Exchange\2016\ExchangeServer2016-x64-cu6.iso"

如何快速向Hyper-V VM批量添加相同ISO映像-2

批量卸载ISO映像

要批量卸载 ISO 映像,只需将路径设置为 $Null 即可:

Get-VM E16* | Get-VMDVDDrive | Set-VMDvdDrive –Path $Null

如何快速向Hyper-V VM批量添加相同ISO映像-3

潜在的截断路径问题

由于不同 Hyper-V 虚拟机挂载的 ISO 文件的路径不同,默认可能无法在 PowerShell 中显示完整路径:

Get-VM E16* | Get-VMDVDDrive | Select-Object VMName, Path

如何快速向Hyper-V VM批量添加相同ISO映像-4

如果你遇到 ISO 路径截断的问题,可以使用 –ExpandProperty 参数来显示完整路径。但由于 Path 列的数据类型原因,使用此参数就无法显示前面的列:

Get-VM E16* | Get-VMDVDDrive | Select-Object –ExpandProperty Path

如何快速向Hyper-V VM批量添加相同ISO映像-5

如果你想两全其美,既要显示 VMName 又要查看其挂载 ISO 的完整路径,可以使用如下 PowerShell 命令:

Get-VM E16* | ForEach { $Path = (Get-VMDVDDrive $_ | Select-Object -ExpandProperty Path);Write-Host $_.VMName $Path}

如何快速向Hyper-V VM批量添加相同ISO映像-6

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论