Windows 11 Pro三向镜像存储空间处于分离/不健康状态的修复求助
我目前在用Windows 11 Pro,搭了一个由5块物理盘组成的三向镜像存储空间(相当于5盘里有2块冗余盘)。
现在的情况是:存储池状态正常(HealthStatus : Healthy),所有5块物理盘也都是健康的(HealthStatus : Healthy),但存储空间本身出问题了。
运行PowerShell命令查看存储空间状态:
PS C:\windows\system32> Get-VirtualDisk -friendlyname "Storage Space 3W5" | fl * Usage : Data NameFormat : OperationalStatus : Detached HealthStatus : Unhealthy ProvisioningType : Thin AllocationUnitSize : 268435456 MediaType : Unspecified ParityLayout : Access : Read/Write UniqueIdFormat : Vendor Specific DetachedReason : Majority Disks Unhealthy
我查过官方的状态说明内容,里面提到“如果没在用Storage Spaces Direct,下一步用Repair-VirtualDisk cmdlet修复虚拟磁盘”,但这个命令对我没用,刚启动就立刻停止了:
PS C:\windows\system32> get-storagejob Name IsBackgroundTask ElapsedTime JobState PercentComplete BytesProcessed BytesTotal ---- ---------------- ----------- -------- --------------- -------------- ---------- Storage Space 3W5-Repair False 00:00:00 Completed 100 0 B 0 B
内容里还说“如果故障磁盘数量超过数据副本数,且故障期间没修复虚拟磁盘,那虚拟磁盘上的所有数据就永久丢失了,这种情况只能删除虚拟磁盘、新建后从备份恢复”——但我想试着找找其他办法。
我知道问题根源:之前给家用服务器清灰的时候,有些SATA线没插好,导致存储池连续3天出现IO错误。但磁盘本身是好的,SMART测试和可靠性计数器都没问题,而且三向镜像应该把数据存在多块盘上,我觉得故障前的数据应该都还在。
但现在我没法让存储空间重新上线,试过这些命令都没用:
Connect-VirtualDiskRepair-VirtualDiskNew-VirtualDiskSnapshotNew-VirtualDiskCloneAdd-PhysicalDisk到虚拟磁盘
把新磁盘加到存储池里是成功的,但这对恢复虚拟磁盘、平衡存储啥的都没帮助。更有意思的是,加了新盘之后我还没法删掉它们,报错:remove-physicaldisk : The storage pool could not complete the operation because the health or operational status of one or more virtual disks in it does not permit it.
我之前在Linux上用ZFS,遇到这种情况可以强制把不健康的池标记为健康来重新上线,运气好的话还能恢复数据、做 scrub 修复之类的。我希望Windows里也有类似的方法:强制把我的存储空间状态改成健康,至少让我能上线访问故障前的数据——毕竟磁盘本身没坏啊。
贴一下物理磁盘的可靠性计数器结果:
PS C:\windows\system32> Get-StoragePool -friendlyname "Storage Pool 3W5" | Get-PhysicalDisk | Get-StorageReliabilityCounter Number Temperature ReadErrorsUncorrected Wear PowerOnHours ------ ----------- --------------------- ---- ------------ 4 0 0 57 6 0 0 63804 3 0 0 73344 5 0 0 73366 1 0 0 73366 7 0 0 67422 2 0 0 18745
我现在正在用ReclaiMe扫描,但还是希望能找到Windows存储管理命令里的解决方案。(我也在微软官方论坛发了这个问题)
备注:内容来源于stack exchange,提问作者Patrick

