Windows Storage Spaces 笔记


自从服务器换装 Windows 10 专业版之后,大部分存储空间的操作都可以通过控制面板搞定(开始菜单内搜索“storage spaces”)。但是有些细节设置在控制面板里面没有,最典型的例子就是“柱面数量”(Number of Columns)。

本文将会记录一些必须要用 PowerShell 搞定的存储空间操作。

I. 背景知识

  1. 不同的容错场景

II. 获取信息

  1. 列出现有物理硬盘

    Get-PhysicalDisk | Format-Table FriendlyName,MediaType,SerialNumber,Size,CanPool,CannotPoolReason
  2. 列出现有虚拟硬盘的柱面数量设置

    Get-VirtualDisk | ft FriendlyName, Size, NumberOfColumns
  3. 查看存储空间正在执行的后台任务

    Get-StorageJob

III. 具体操作

  1. 新建虚拟硬盘时加入柱面数量设置
    New-VirtualDisk -StoragePoolFriendlyName "Pool" -FriendlyName "New" -Size 1TB -ProvisioningType Thin -ResiliencySettingName "Parity" -NumberOfColumns 5 -PhysicalDiskRedundancy 1
  • NumberOfColumns 就是柱面数量
  • PhysicalDiskRedundancy 是冗余信息所需的磁盘数量(同时也是柱面数量)
    所以,上例中,新建的虚拟硬盘将会分布到 5 块物理硬盘上,并且用其中 1 块存储冗余信息,剩下的 4 块硬盘存储数据。
  1. 如果遇到“Insufficient Capacity”原因无法将硬盘加入,需要先重置硬盘。

    Reset-PhysicalDisk -FriendlyName "HDD1"

    如果几个硬盘都有同样的 FriendlyName,可以用 SerialNumber 来区分

    Get-PhysicalDisk -SerialNumber 123456 | Reset-PhysicalDisk
  2. 如果遇到 0x00000075 错误(无法初始化,提示有其他软件使用硬盘),可以用以下命令将所有闲置硬盘加入存储池

    Add-PhysicalDisk -StoragePoolFriendlyName "Pool" -PhysicalDisks (Get-PhysicalDisk -CanPool $True)
  3. 如果需要从存储空间中删除一块物理硬盘
    首先要标记硬盘退役

    Set-PhysicalDisk -FriendlyName 'HDD1' -Usage Retired

    标记之后系统会将硬盘上的数据重新分布到其他硬盘上。等数据转移完成后

    Remove-PhysicalDisk -FriendlyName 'HDD1'
添加新评论