Powershell 提供池、虚拟磁盘和共享

Powershell 提供池、虚拟磁盘和共享,powershell,windows-server-2012-r2,hyper-v,Powershell,Windows Server 2012 R2,Hyper V,我开始自学PowerShell。在其中一本书(WindowsServer2012R2,实现和维护)中,我得到了一个任务,我必须在其中创建脚本,该脚本运行后,将在新创建的vdisc上创建存储池、虚拟磁盘和新共享 根据书本说明,我已经做到了: New-StoragePool -FriendlyName "Pool" -StorageSubSystemFriendlyName (Get-StorageSubSystem).FriendlyName -PhysicalDisk (Get-Physical

我开始自学PowerShell。在其中一本书(WindowsServer2012R2,实现和维护)中,我得到了一个任务,我必须在其中创建脚本,该脚本运行后,将在新创建的vdisc上创建存储池、虚拟磁盘和新共享

根据书本说明,我已经做到了:

New-StoragePool -FriendlyName "Pool" -StorageSubSystemFriendlyName (Get-StorageSubSystem).FriendlyName -PhysicalDisk (Get-PhysicalDisk | where CanPool -eq True) -ProvisingTypeDefault Thin -ResiliencySettingNameDefault Mirror

New-VirtualDisk -FriendlyName "vDisk1" -StoragePoolFriendlyName "Pool" -Size 5TB

New-VirtualDisk -FriendlyName "vDisk2" -StoragePoolFriendlyName "Pool" -Size 10TB

New Partition -DiskNumber(Get-Disk | where BusType -eq Spaces).Number -UseMaximumSize -AssignDriveLetter | Format-Volume -FileSystem NTFS -Confirm:$false

现在我想通过
newitem
功能为新创建的虚拟磁盘创建共享文件夹。问题是,我不知道如何为多个磁盘创建路径,而且
新分区中的参数
-AssignDriveLetter
会自动创建驱动器号。因此,我不知道驱动器号。因此,我不知道如何在
新项目中设置变量
路径
,我建议使用以下方法: 在配置池和磁盘时使用变量,以便在接下来的步骤中重用这些变量,并且将引用您创建的特定对象:

$NewPartitions = New-Partition -DiskNumber(Get-Disk | where BusType -eq Spaces).Number -UseMaximumSize -AssignDriveLetter | Format-Volume -FileSystem NTFS -Confirm:$false
$NewPartitions
变量将包含一个新分区数组及其驱动器号,您可以使用
foreach
循环每次执行
new Item

$NewFolders = foreach ($DriveLetter in ($NewPartitions.DriveLetter))
 {
  New-Item -Type Directory -Path ($DriveLetter+":\share")
 }

这将在每个驱动器上生成一个名为“共享”的文件夹,然后您可能希望使用相同的策略将其传递到
New SmbShare
cmdlet
$NewFolders.FullName
包含新创建文件夹的完整路径。

这是针对Hyper-V的?您好,是服务器在Hyper-V i设置2个物理呼叫光盘上(脱机)