我知道如何创建 VM,也知道如何使用 Powershell 脚本在 Hyper-V 上启动该 VM,但这是第一次使用该 VM,所以我需要设置 Windows,但我不知道如何使用 Powershell。
答案1
下面是如何使用 PowerShell 设置 VM 的示例。
# Variables
$CLI1 = "50331-CUSTOM-CLI" # Name of VM running Client Operating System
$SRV1 = "50331-CUSTOM-SRV" # Name of VM running Server Operating System
$CRAM = 2GB # RAM assigned to Client Operating System
$SRAM = 1GB # RAM assigned to Server Operating System
$CLI1VHD = 80GB # Size of Hard-Drive for Client Operating System
$SRV1VHD = 40GB # Size of Hard-Drive for Server Operating System
$VMLOC = "C:\HyperV" # Location of the VM and VHDX files
$NetworkSwitch1 = "PrivateSwitch1" # Name of the Network Switch
$W7ISO = "C:\Labfiles\Windows7.iso" # Windows 7 ISO
$W7VFD = "C:\Labfiles\Windows7.vfd" # Windows 7 Virtual Floppy Disk with autounattend.xml file
$WSISO = "C:\Labfiles\W2K8R2.iso" # Windows Server 2008 ISO
$WSVFD = "C:\Labfiles\W2K8R2.vfd" # Windows Server 2008 Virtual Floppy Disk with autounattend.xml file
# Create VM Folder and Network Switch
MD $VMLOC -ErrorAction SilentlyContinue
$TestSwitch = Get-VMSwitch -Name $NetworkSwitch1 -ErrorAction SilentlyContinue; if ($TestSwitch.Count -EQ 0){New-VMSwitch -Name $NetworkSwitch1 -SwitchType Private}
# Create Virtual Machines
New-VM -Name $CLI1 -Path $VMLOC -MemoryStartupBytes $CRAM -NewVHDPath $VMLOC\$CLI1.vhdx -NewVHDSizeBytes $CLI1VHD -SwitchName $NetworkSwitch1
New-VM -Name $SRV1 -Path $VMLOC -MemoryStartupBytes $SRAM -NewVHDPath $VMLOC\$SRV1.vhdx -NewVHDSizeBytes $SRV1VHD -SwitchName $NetworkSwitch1
# Configure Virtual Machines
Set-VMDvdDrive -VMName $CLI1 -Path $W7ISO
Set-VMDvdDrive -VMName $SRV1 -Path $WSISO
Set-VMFloppyDiskDrive -VMName $CLI1 -Path $W7VFD
Set-VMFloppyDiskDrive -VMName $SRV1 -Path $WSVFD
Start-VM $SRV1
Start-VM $CLI1