Taking work now — the first look is freeWhole sets posted in from anywhere in the UK, or handed in at ten drop-off pointsQuicker still, give us a ring:0800 6890668
RARRAID Array Data Recovery 0800 6890668 Price my job
RAR / Controllers and hosts / Windows Storage Spaces and dynamic disks

Storage Spaces · Get-StoragePool · Get-VirtualDisk · Get-PhysicalDisk · dynamic disks · LDM · diskpart · Failed Redundancy

Windows Storage Spaces and dynamic disk recovery. Two generations of Windows software RAID, and the PowerShell that describes the newer one.

Windows has two kinds of software RAID. Dynamic disks, from Windows 2000 onwards, put a Logical Disk Manager database at the end of every disk and build spanned, striped, mirrored and RAID-5 volumes from extents across them, reporting Healthy, Failed Redundancy, Failed, Foreign and Missing in Disk Management. Storage Spaces, from Windows 8 and Server 2012 onwards, pools physical disks, carves them into slabs and allocates simple, mirror and parity virtual disks across columns, with a pool database replicated on every disk and health reported by Get-StoragePool, Get-VirtualDisk and Get-PhysicalDisk and in Microsoft's states: Warning, Unhealthy, No redundancy, Detached, Incomplete. The states are on the Storage Spaces error page; this page is about the platform: which diagnostics are read-only, what the pool database holds, the 2020 parity issue's KB numbers, and how either generation is reassembled from images. A pool or a dynamic set of two to four disks is £500 + VAT upwards after the free look, fixed in writing, 5–10 days at the bench.

Free first lookOne fixed figure in writingNo data, no bill on most jobsReturn postage paid

Rather talk it through? An engineer answers the bench line
0800 6890668

Power down. Label every slot before a drive comes out. Do not rebuild, do not force a drive online, do not import or clear a foreign configuration, do not initialise, and do not run chkdsk, fsck, zpool import -F or mdadm --create on the members. A rebuild reads every sector of every survivor and writes to the replacement; each of the commands writes to the drives. On images, all of them are reversible. On the originals, none of them is.

Models and versions we see.

Which level is it →
Family Models or versions Metadata, defaults and notes
Read-only diagnosticsGet-StoragePool, Get-VirtualDisk, Get-PhysicalDisk, Get-StorageJob; diskpart list disk / list volumeCopy their output; they write nothing
Writing commandsRepair-VirtualDisk, Remove-PhysicalDisk, Reset-PhysicalDisk, Remove-StoragePool; diskpart clean; convert to basicNever before imaging
Storage Spaces parityWindows 10/11 and Server 2012 onwardsThree or more columns; 256KB interleave default
Dynamic disksWindows 2000 to Server 2022LDM database at the end of each disk; RAID-5 needs Server
The 2020 issueKB4568129, KB4570719, KB4568831Parity spaces RAW after 2004; fixed 31 July 2020

What tends to go wrong on Windows.

Which commands writeGet-StoragePool, Get-VirtualDisk and Get-PhysicalDisk read. Repair-VirtualDisk reads every survivor and writes; Remove-PhysicalDisk and Reset-PhysicalDisk change the pool; Remove-StoragePool deletes the database; diskpart clean and convert-to-basic erase the metadata. chkdsk repairs a volume that may not be the volume.
The pool databaseEvery physical disk holds a copy describing the pool, its virtual disks, their columns and interleave and the slab map. When copies disagree, Windows takes the virtual disk offline; the bench reads every copy from the images and uses the newest consistent one.
The 2020 parity issueMicrosoft's KB4568129 documented parity spaces showing as RAW after the Windows 10 and Server 2004 update, with a compatibility hold from 19 June 2020; KB4570719 gave a workaround; KB4568831 on 31 July 2020 fixed an in-memory parity bitmap fault; the hold lifted on 13 August. Microsoft advised against chkdsk throughout. Later reports after 22H2 and 25H2 updates are user reports only.
Dynamic disks and LDMThe LDM database at the end of each dynamic disk describes every volume's extents. Foreign means another machine's database; Missing means a disk the database expects. Converting to basic removes the database and leaves the extents where they were.

Windows Storage Spaces and dynamic disks symptoms, and how long each gives you.

Not listed? Describe it on the form →
Packing it and posting it: power down, photograph the controller's screen or export its log, and write the slot number on each drive with a marker before it comes out of its carrier. Send every member of the set, including the one that failed first; it holds the stripes the rebuild never reached. Each drive travels in an anti-static bag inside its own padding, in a box with nothing able to move. Send the controller if it was replaced or holds an encryption key; otherwise it stays. Insure the parcel for what the data is worth, use a tracked service, and know that the posting address is not printed anywhere on this site; it arrives by email in reply to the form, with a booking sheet to print; the sheet inside the parcel is what matches it to your enquiry when it is opened. Or hand the sealed parcel in at the nearest of ten drop-off points, your name on the outside and the sheet inside; say where you are on the form and it comes by email. We pay the postage home either way. The whole of it is written up on the guide to packing and posting.

What the message means on Windows.

Describe yours to us →
What you see The usual reason Where that leaves you
Pool metadata version mismatch after upgradeA newer Windows wrote itDo not delete; read from images
Dynamic disk Online (Errors)I/O errors on a memberImage it before any resync
Reset-PhysicalDisk run on a memberIts pool metadata clearedThe other copies describe it; image it
DegradedA member out; still readableImage the weak member before any resync or resilver
Will not assemble or importToo few current members, or metadata damagedMetadata read from images; assembled in software
Read-only or suspendedErrors stopped I/ORead-only on images at the newest consistent state
Command already run--create, -F, chkdsk, fsckAssessed for what was written

From the parcel arriving to your files going back.

Work we have closed →
01

Logged the day it lands, and the first look costs nothing Free

A case number goes on the parcel and a number on every member the day it is opened, matched to the slot you wrote on it. Each member goes on the imager its interface needs, never on a controller, and its metadata is read before a sector is: the level, the order, the stripe size, the event counts that say which member is current and which dropped out first. An engineer settles what has happened to the set and how much of it can honestly be read back. Back to you come two things together: a straight note of what is liftable and what is not, plus one figure, fixed and written down. Accept it, or decline and owe us nothing.

Nothing to pay for lookingA single figure, put in writingNo rebuilds, no imports, no initialise
02

Every member imaged, including the one that failed first

Every drive in the set is imaged sector by sector, weak areas last, on hardware that controls every retry, with a map of what could not be read kept for each. Members with failed heads go to the clean bench first; that is the drive site's work and the same bench does it. The drive that dropped out first is imaged too, because it still holds every stripe written before it dropped, and a rebuild that stalled part-way never reached them.

Sector by sector, weak areas lastThe first-dropped member included
03

The geometry, from the metadata or from the parity

Where the controller's metadata survives on the members, the order, stripe size, parity rotation and data offset are read from it. Where it was cleared or overwritten, they are recovered from the data: parity across the members at the same offset should XOR to zero on a consistent stripe, which confirms the level and finds the stale member; where parity lands says the rotation; entropy at stripe edges and the file system's own anchors give the stripe size, the order and the start.

Metadata first, parity secondOrder, stripe, rotation, offset
04

Assembled in software, and repaired on the virtual volume

The set is put together from the images in software, with nothing written to any of them: the current members in, the stale member used only to fill holes a survivor could not give. The file system is checked and repaired on a copy of the virtual volume, VMFS and CSV volumes opened and the virtual machines' disks extracted, databases repaired where they need it. The originals are not touched again.

Nothing written to the imagesVirtual machines and databases opened
05

You see the file list before you pay

What was recovered is listed for you first, and only then does a bill exist. Approve the list and it is invoiced; turn it down and it is not — and where nothing has come back, most jobs carry no charge at all. Recovered data travels home on fresh media bought in for your job, with the postage at our end. Your case is not closed until you have opened the files on a machine of your own.

No charge until you accept the figureFresh media, supplied with the job5–10 days at the bench

From the bench

  • Export the three Get- outputs first. They record every disk's state and the virtual disk's layout, and they write nothing.
  • Do not run chkdsk on a RAW parity space. Microsoft said so in 2020, and it holds whenever the map is the fault.
  • Say the Windows version and the update history. Pool metadata changed across releases.
  • Copy out the read-only diagnostics first: --examine, zpool status, Get-VirtualDisk, dmesg. They are the case.
  • The forum's fix writes. --create, --assemble --force, zpool import -F, chkdsk and fsck all belong on images.
  • Say the version. mdadm, OpenZFS and Windows all changed their on-disk formats, and the tools follow.

One job, followed all the way through.

UK · RAR-2026-0632JOB LOGGED ✓

A Windows 11 desktop's three-disk parity space holding a photographer's archive, one disk retired, a repair started, the second disk showing warnings, and the space gone to No redundancy with chkdsk already run on the RAW volume

All three disks came in. The two retired disks were imaged, the second slowly; the pool database from every image gave three columns, a 256KB interleave and the slab map. The virtual disk was assembled from the slabs in software, with the first-retired disk's slabs filling what the second could not read, and the NTFS volume examined on a copy: chkdsk had rewritten the MFT around the unreadable slabs. The journal was replayed and the archive copied out with a list of what chkdsk had truncated.

99.8% of the archive recovered8 days here, and back by post
Illustrative example — replace with a genuine case

What helps, and what harms.

Do this much first

  • Copy out the read-only diagnostics
  • Power down and label the members
  • Send every member, and any cache, log or witness device
  • Tell us the version and every command that was run

What sets us back

  • mdadm --create or --assemble --force
  • zpool import -F, -X or -T
  • chkdsk or fsck on a degraded or mis-assembled volume
  • Resetting or recreating the pool

Questions answered before you commit.

Which Windows commands are safe on a failed Storage Space?

Get-StoragePool, Get-VirtualDisk, Get-PhysicalDisk and Get-StorageJob, and diskpart's list commands. Repair-VirtualDisk, Remove- and Reset-PhysicalDisk, Remove-StoragePool, diskpart clean and chkdsk all write.

My dynamic disks show Foreign. Is the data gone?

No. They came from another Windows machine and the new one has not imported their LDM database. With every disk present, importing is usually safe; reverting to basic is not.

What happened to Storage Spaces in 2020?

The Windows 10 and Server 2004 update left parity spaces showing as RAW; Microsoft's KB4568129 put a compatibility hold on affected machines from 19 June, and KB4568831 on 31 July fixed it. Microsoft advised against chkdsk throughout.

What does it cost?

£500 + VAT upwards for a pool or dynamic set of two to four disks after the free look, fixed in writing; Storage Spaces Direct from £1,250 + VAT.

Nothing gets worse while it is powered down.

Looking at it is free. Back comes a list of what opened and what did not, together with a single price to finish, set down in writing while you are still free to say no. On most jobs an invoice only follows the data. Until that list reaches you, leave the server off and the drives in their slots.

0800 6890668