首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Powershell:将.vhdx附加到VM的复制项

Powershell:将.vhdx附加到VM的复制项
EN

Stack Overflow用户
提问于 2016-07-03 22:19:45
回答 1查看 734关注 0票数 0

我的目标是创建一个新的VM,将一个.vhdx复制到一个位置,将.vhdx添加到新的VM中,然后启动它。

我的问题是,.vhdx没有附加到VM。我不知道为什么。

我想说Copy-Item是错误的,因为当我运行这一行时它会挂起,至少它看起来是这样的,因为它从未完成,而且我正在SSD驱动器上尝试这一点。

代码语言:javascript
复制
$VM_NAME = "PS_TEST_VM"
$VM_RAM = 1GB
$VM_RAM_MAX = 2GB
$VM_CPUS = "4"
$VM_DEST_PATH = "C:\Users\Public\Documents\Hyper-V\Virtual hard disks"
$VM_TO_COPY = "WIN81.1.vhdx"
$VM_HOST = "MAINKITTEN"
$NETWORK_SWITCH = "DEFAULTSWITCH"
$ROOT_VHD_TPL = "C:\Users\Public\Documents\Hyper-V\Virtual hard disks\WIN81.1.vhdx"

# CREATE
New-VM -Name $VM_NAME -Path $VM_DEST_PATH -NoVHD -Generation 2 -MemoryStartupBytes $VM_RAM -SwitchName $NETWORK_SWITCH 
Set-VM -Name $VM_NAME -ProcessorCount $VM_CPUS -DynamicMemory -MemoryMinimumBytes $VM_RAM -MemoryStartupBytes $VM_RAM -MemoryMaximumBytes $VM_RAM_MAX
# COPY AND ATTACH
Copy-Item -Path "${VM_DEST_PATH}\${VM_TO_COPY}" -Destination "${VM_DEST_PATH}\${VM_NAME}.vhdx"
Add-VMHardDiskDrive -VMName $VM_NAME -path "${VM_DEST_PATH}\${VM_NAME}.vhdx"

Start-VM $VM_NAME
echo "done"
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-04 11:54:44

您是否尝试过首先使用.vhdx参数复制-Force,然后使用现有的VHD参数集语法(https://technet.microsoft.com/library/hh848537(v=wps.620%29.aspx)?)创建新的VM?

语法

代码语言:javascript
复制
Parameter Set: Existing VHD
New-VM [[-Name] <String> ] [[-MemoryStartupBytes] <Int64> ] -VHDPath <String> [-AsJob] 
             [-BootDevice <BootDevice> ] [-ComputerName <String[]> ] [-Path <String> ] 
                    [-SwitchName <String> ] [-Confirm] [-WhatIf] [ <CommonParameters>]

代码语言:javascript
复制
# COPY
Copy-Item -Path "${VM_DEST_PATH}\${VM_TO_COPY}" -Destination "${VM_DEST_PATH}\${VM_NAME}.vhdx" -Force
# CREATE and Attach vhdx
New-VM -Name $VM_NAME -MemoryStartupBytes $VM_RAM -VHDPath "${VM_DEST_PATH}\${VM_NAME}.vhdx" -Path $VM_DEST_PATH -SwitchName $NETWORK_SWITCH -Generation 2
Set-VM -Name $VM_NAME -ProcessorCount $VM_CPUS -DynamicMemory -MemoryMinimumBytes $VM_RAM -MemoryStartupBytes $VM_RAM -MemoryMaximumBytes $VM_RAM_MAX

Start-VM $VM_NAME
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38174819

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档