Data recovery · operator guide

Get your files back. Step by step, screen by screen.

Every recovery feature - what it is for, the exact menu path, every option and what to choose, the modals you will meet, and ten real situations each. Recover, image, RAID, CCTV, ransomware, databases, mail, encrypted volumes and disposal.

21 filesystems recovered261 file types carved100% byte-exact, or it says so
Feature 1 · Recover a drive

Get deleted and lost files back from a disk, card or image

The core of the product. It reads the filesystem for named files and carves free space for the rest, byte-exact, always read-only against your source.

1How to get there

Home opens on Recover a drive. Everything below happens in that one workspace.

HomeRecover a driveSource → Options → Scan → Your files
The Recover a drive workspace with a scan in progress
  1. 1Source the drive or image you are recovering from - opened read-only.
  2. 2What to look for pick the kinds to show first; the scan still recovers everything.
  3. 3Progress ring live percentage, phase and time remaining.
  4. 4Found so far the running count and breakdown while the scan runs.
  5. 5Browse first read the index first and recover only what you tick.
app-recovery.webp - a live scan of a 100 MB test image (real, captured)

2Which mode do I choose?

The one decision that shapes the whole recovery.

Smart (recommended)
Reads the filesystem for named files, then carves free space for the rest. One pass, the most complete result.
Choose this when you are not sure what happened, or you want everything back with original names where they survive.
Filesystem only
Recovers files the index still knows, with their real names and folders. Fast.
Choose this when the drive still mounts and you deleted something recently - names and folders matter more than deep carving.
Carving only
Ignores the index and rebuilds files by their binary signatures.
Choose this when the card was formatted or the filesystem is gone, so there is no index left to read.

3The options, and what to set them to

OptionWhat it doesWhat to choose
Output folderWhere recovered files are written. Always a different drive from the source.Always: a separate disk with room for the whole recovery. The pre-flight refuses the source drive.
Recover selected onlyReads the index and writes only the files you tick.When you need one folder, not the whole drive - saves hours and space.
Include intact filesAlso copies files that were never deleted.For a full clone of what is there; leave off when you only want deleted items.
Original datesRestores each file's created / modified times.On for evidence and for keeping a photo library in order (it is on by default).

Good to know. Nothing you tick under “What to look for” narrows the scan - it only changes what is shown first. The scan always recovers everything, so you can never lose a file by choosing the wrong category.

4Step by step

  1. Stop using the drive
    Every write can overwrite what you are trying to get back. If it is the system disk, image it first (see Copy a failing drive).
  2. Choose the source
    Pick the drive, or point at a .dd/.img/.E01 image. It opens read-only.
  3. Choose what to VIEW, not what to recover
    Ticking Photos shows photos first; the scan still recovers everything so a stray PDF is never lost.
  4. Set a separate output folder
    The pre-flight checks free space and refuses to write onto the drive being recovered.
  5. Start the scan, or Browse first
    Browse reads the index in seconds so you can recover a single folder instead of the whole disk.
  6. Preview, then export
    Look at a file before you trust it. Export is where a licence use is spent, once per source drive.

Do not do this. Never install this tool onto, or recover onto, the drive you are rescuing. Writing to it can overwrite the very files you want back. The pre-flight refuses the source drive as a destination for exactly this reason.

5Ten situations, and exactly what to do

1 of 10

Emptied the Recycle Bin

Files were deleted and the bin emptied an hour ago on an NTFS disk still in use.

What to choose

Smart mode, recover selected. The MFT still holds the names.

Steps
  1. Stop writing to the disk
  2. Source = the disk, Browse first
  3. Tick the folder, Recover selected
  4. Preview a file, then export
recoveryantra recover --device \\.\PhysicalDrive1 --only /Users/me/Documents/ -o D:\Rec
2 of 10

Card says it needs formatting

A camera SD card prompts Windows to format it; the photos are still on it.

What to choose

Carving - the filesystem header is gone, so recover by signature.

Steps
  1. Do NOT format
  2. Source = the card (SDXC reader)
  3. Carving mode, Photos + Videos
  4. Export to a folder on the PC
recoveryantra recover --device \\.\PhysicalDrive2 --mode carve -o D:\Card
3 of 10

USB stick shows as RAW

A stick that used to open now shows 0 bytes / RAW in Explorer.

What to choose

Smart - the tool reads the backup boot sector the OS ignored.

Steps
  1. Source = the stick
  2. Smart mode
  3. If it reads, Browse first; else full scan
  4. Export
recoveryantra recover --device \\.\PhysicalDrive3 -o D:\USB
4 of 10

Windows was reinstalled

A fresh Windows sits on top of the old files.

What to choose

Smart, full recovery - old files live in what is now free space.

Steps
  1. Image the disk first (it is the system disk)
  2. Recover from the image
  3. Full recovery, all types
  4. Sort the output by type
recoveryantra recover --image disk.dd -o D:\Old --include-intact
5 of 10

Only one file matters

A single spreadsheet was deleted from a 2 TB drive.

What to choose

Browse first + Find by mask - do not scan 2 TB for one file.

Steps
  1. Source = the drive, Browse first
  2. Filter *.xlsx, deleted-only
  3. Tick the one file
  4. Recover selected
recoveryantra recover --list --device \\.\PhysicalDrive1
6 of 10

The recovered file will not open

A recovered .docx opens as garbage.

What to choose

It was in reused space - let the tool try the other route (rescue) or repair.

Steps
  1. Recover with Smart mode
  2. Check the MISMATCH note on the file
  3. Use Repair on a copy
  4. If still broken, the bytes are gone - honest limit
recoveryantra recover --image x.dd -o out --mode smart
7 of 10

A whole drive, sorted

Return everything from a failed laptop disk, organised.

What to choose

Smart, recovery profile - output sorted into Photos / Documents / Video.

Steps
  1. Image if it is failing
  2. Recover from image/drive
  3. Recovery profile (sorts by type)
  4. Export
recoveryantra recover --image laptop.dd -o D:\Laptop --profile recovery
8 of 10

Byte-exact, for proceedings

The files may be used in a dispute.

What to choose

Forensic profile - flat layout, SHA-256 per file, chain-of-custody manifest.

Steps
  1. Image to E01 first, verify
  2. Recover from the verified image
  3. Forensic profile
  4. Keep the manifest
recoveryantra recover --image case.E01 -o D:\Case --profile forensic
9 of 10

Two partitions, both have Photos

A drive with two volumes each holding a /Photos/ folder.

What to choose

Browse first and scope by volume - 1:/Photos/ is partition 1 only.

Steps
  1. Source = the drive, Browse first
  2. Expand each volume
  3. Tick 1:/Photos/ only
  4. Recover selected
recoveryantra recover --only 1:/Photos/ --device \\.\PhysicalDrive1 -o D:\P1
10 of 10

CHKDSK was already run

Someone ran CHKDSK and now files are in FOUND.000 or gone.

What to choose

Smart + carving - CHKDSK moves fragments, so the index is unreliable; carve recovers content.

Steps
  1. Source = the drive
  2. Smart mode (carve fallback on)
  3. Recover all types
  4. Check FOUND.* against the carve results
recoveryantra recover --device \\.\PhysicalDrive1 --mode smart -o D:\Rec

6The same job at the command line

recoveryantra recover --device \\.\PhysicalDrive2 -o D:\Recovered --mode smart
Feature 2 · Copy a failing drive

Image a drive before it gets worse

Gentle, ddrescue-style imaging: the feasibility check measures a drive before anything is copied, the easy data comes first, and every later step runs against the copy - never the original again.

1How to get there

Home → Copy a drive opens on this workspace directly.

HomeCopy a driveWhat to copy → Can it be recovered? → Where to save → Copying → Done
Copy a drive - choosing the source before the feasibility check
  1. 1Refresh re-reads the attached drives, in case one was just plugged in.
  2. 2Image an existing file opens to re-image an existing file instead of a physical drive, or reach a network drive or a phone.
  3. 3What is on it (view only) a read-only preview of the chosen drive's folders.
  4. 4Pick a drive to see its folders prompts you to choose a drive before the preview can show anything.
  5. 5Check if it can be recovered moves to the feasibility check, the crucial step before any copying starts.
app-imaging.webp - the imaging workspace, a real capture

2Check first, always

The feasibility check is the crucial first step - it measures before it promises.

The measured feasibility verdict, before any copying starts
  1. 1What to copy confirms the source you chose.
  2. 2How measured explains the sampling method behind the stated range.
app-feasibility.webp - a real study of the source, with the numbers behind it

3Full image, or targeted?

Check first (recommended)
Samples the drive without copying it and states the chances in plain words, in seconds to a couple of minutes.
Choose this when always, before quoting a client or promising anything - and before any drive that might be failing is touched again.
Full image
Copies every sector, including free space, so deleted files can still be recovered from the image afterwards.
Choose this when the drive may hold deleted files, the original has to go back untouched, or the matter may be produced.
Targeted / read-once
Reads only the space the filesystems say holds data, skipping free space without touching it at all.
Choose this when the drive is large or actively failing and deleted files in free space are not what you need back.

4The options, and what to set them to

OptionWhat it doesWhat to choose
--formatraw (.img, resumable) or e01 (compressed evidence container).Evidential work: e01. A working copy for this bench only: raw - it is resumable if the copy stops.
--targetedFilesystem-aware, read-once imaging - free space is never read.A large or failing drive where deleted data in free space is not the priority. Omit it whenever deleted files matter.
--entropy-mapRecords which spans are high-entropy as the copy runs, in the image's .map.json.To see at a glance whether a drive is encrypted before spending hours recovering from it. It cannot tell encryption from compression on its own.
--retriesRetry attempts for a bad sector before moving on.Lower it on a drive that is actively dying - every retry is another read of a failing surface. Raise it only on a marginal drive the case justifies a slow pass on.
check --samplesHow many areas of the drive the feasibility check reads.The default suits a first assessment. Raise it only when the estimate must be tighter than a few percent, and only on a drive that is not clearly failing.
--forceStarts even when the pre-flight objects (too little room, or the same drive as the destination).Only after reading the objection and confirming it does not apply. A refusal you have not read is not one you can override safely.

5Step by step

  1. Check first
    “Can it be recovered?” measures the drive without copying it and states the chances before you promise a client anything.
  2. Choose the source
    A physical drive from the list, or an existing image file to re-image - for example to convert raw to E01.
  3. Choose the format
    raw for a resumable working copy on this bench, E01 for evidential work.
  4. Choose the destination
    Separate storage with room for the whole source. The pre-flight refuses the drive being imaged as its own destination.
  5. Start the copy
    The easy data comes first; the difficult areas are swept afterwards. Saved bytes, speed and unreadable-so-far update live, and Stop is real.
  6. Recover from the image
    Every later step - scanning, RAID assembly, CCTV, database work - runs against the image, never the original drive again.

Do not do this. Do not run a normal scan, CHKDSK or a repair tool on a drive that is clicking or failing. A scan reads the surface repeatedly and can be the thing that finishes it off; CHKDSK and repair tools WRITE to a drive that is already dying. Image first, always.

6Ten situations, and exactly what to do

1 of 10

A drive is clicking

A 2 TB drive with a clicking head needs its files back before it stops for good.

What to choose

Image first, full raw copy. Do not run a normal scan - repeated full-surface reads can be what finishes a failing drive off.

Steps
  1. Do NOT run CHKDSK or a repair tool on it
  2. Check first, then image the whole drive
  3. Recover from the image afterwards
  4. Keep the drive powered down between attempts
recoveryantra image --device \\.\PhysicalDrive2 -o D:\Case\drive.img --retries 3
2 of 10

Going to a lab or to proceedings

The copy may need to be examined by someone else, or produced.

What to choose

E01 format - compressed and carries acquisition metadata other forensic tools expect.

Steps
  1. Check first
  2. Image to E01, not raw
  3. Verify the image reads cleanly
  4. Keep the certificate/manifest with it
recoveryantra image --device \\.\PhysicalDrive1 -o D:\Case\exhibit.E01 --format e01
3 of 10

A huge, slow external drive

A 10 TB drive is failing gently; only deleted files matter far less than time.

What to choose

Targeted / read-once - only the space filesystems say holds data is read.

Steps
  1. Check first
  2. Image with --targeted
  3. Recover from the image
  4. State plainly that free space was not imaged
recoveryantra image --device \\.\PhysicalDrive3 -o D:\Img\vol.img --targeted
4 of 10

Possibly encrypted, not sure

A seized laptop's disk may or may not be BitLocker-protected.

What to choose

Full image with --entropy-map - see at a glance which spans are high-entropy before committing hours to recovery.

Steps
  1. Image the whole drive with --entropy-map
  2. Read the .map.json
  3. Treat high-entropy spans as possibly encrypted, not proven so
  4. Continue to Recover a drive once unlocked
recoveryantra image --device \\.\PhysicalDrive4 -o D:\Img\vol.img --entropy-map
5 of 10

A client needs the answer in writing before you quote

Nobody wants an open-ended promise on a drive nobody has tested yet.

What to choose

Check, with a PDF - the verdict is stated as a range, based on a stated sample.

Steps
  1. Run check against the drive
  2. Write the PDF verdict
  3. Quote against the stated chances, not a guess
  4. Image only once the client has agreed
recoveryantra check --device \\.\PhysicalDrive2 --pdf D:\Reports\verdict.pdf
6 of 10

An image arrived from another lab

A copy was handed over and needs confirming before billing continues against it.

What to choose

Check --image - the same feasibility test run against a file instead of hardware.

Steps
  1. Run check --image against the received file
  2. Confirm it reads cleanly
  3. Only then continue recovery work against it
recoveryantra check --image D:\Received\case.E01
7 of 10

Deleted photos and the card is also unreliable

The customer deleted a folder and the card is now intermittent.

What to choose

Full image, not targeted - a targeted image skips the free space the deleted photos are sitting in.

Steps
  1. Check first
  2. Full image, not --targeted
  3. Recover from the image with Smart mode
  4. Photos come back from free space
recoveryantra image --device \\.\PhysicalDrive5 -o D:\Img\card.img
8 of 10

Feeding a CCTV recovery

A recorder disk needs to go through CCTV recovery, and the recorder must not be run again.

What to choose

Image the recorder disk once, then run the CCTV workspace against the image, never the disk again.

Steps
  1. Power the recorder down and remove the disk
  2. Image the whole disk
  3. Open CCTV footage against the image, not --device
recoveryantra image --device \\.\PhysicalDrive6 -o D:\Case\recorder.dd
9 of 10

The pre-flight objects to the destination

A refusal names too little room, or the same physical drive as the source.

What to choose

Read the objection first. Change the destination if it is genuinely wrong; use --force only once you have confirmed it does not apply.

Steps
  1. Read the stated reason
  2. Fix the destination if the reason is real
  3. Only force past a check you have read and understood
recoveryantra image --device \\.\PhysicalDrive2 -o E:\vol.img --force
10 of 10

A marginal drive that is not actively dying

Reads are slow but the drive is stable, and every sector matters.

What to choose

Raise --retries - a slow, thorough pass is justified because the drive is not deteriorating further.

Steps
  1. Check first to confirm it is stable, not failing
  2. Image with a higher --retries
  3. Recover from the image
recoveryantra image --device \\.\PhysicalDrive7 -o D:\Img\vol.img --retries 8

7The same job at the command line

recoveryantra check --device \\.\PhysicalDrive2 && recoveryantra image --device \\.\PhysicalDrive2 -o D:\Case\drive.img
Feature 3 · RAID / NAS assembly

Rebuild a RAID or NAS array from its member disks

Reads the array's own layout - level, chunk size, disk order, parity rotation - from the members' metadata, so the original controller is never needed. Every member is only ever read.

1How to get there

Home → RAID array. Assembly always works from IMAGES of the members, never the physical disks directly.

HomeRAID arrayMembers → Auto-detect → Preview → Recover
RAID / NAS assembly - member slots, auto-detect and recovery
  1. 1Member path the path to one member image, in the array's own order.
  2. 2on / off whether this member is present; a missing disk still has a slot.
  3. 3Remove removes a member slot.
  4. 4Add a member adds another member slot to the array.
app-raid.webp - no live array on this bench; captured in its honest empty-slots state

2Auto-detect, or state the layout?

Auto-detect
Reads the geometry - level, chunk size, disk order, parity rotation - from the members' own metadata (md superblocks, Intel RST, Windows dynamic disks).
Choose this when you always try this first. It removes the guesswork that a wrong stripe size or disk order turns into scrambled files.
Manual level / chunk
You state the RAID level and stripe size yourself.
Choose this when the array's metadata is gone and you know the configuration from site documentation or the controller.
List volumes first
Reports which volumes the disks hold before anything is recovered.
Choose this when the disks are Windows dynamic disks - one set can carry several volumes, and you need to know which one holds the data.

3The options, and what to set them to

OptionWhat it doesWhat to choose
--membersThe member images, in array order; a dash marks a missing or failed member.Order matters more than anything else here. Getting it wrong assembles a volume that looks plausible and holds scrambled files.
--autoDetects level, chunk and layout from the members' own metadata.Try this first, always. Fall back to stating the level and chunk only when the metadata did not survive.
--level / --chunk / --layoutThe RAID level, stripe size and parity layout, stated by hand.Only when --auto cannot read the metadata. The chunk size is the value most often recorded wrongly in site documentation - verify by checking that recovered files open.
--list-volumes / --volumeLists, then selects, one of several volumes on Windows dynamic disks.Run --list-volumes first on any dynamic-disk set. Then name the volume from that list.
--sector-sizeThe sector size used to find the volume (default 512).Change it only for arrays built on 4K-native drives; leaving it wrong can prevent the volume being found at all.
--include-intactRecovers the whole volume, not only what was deleted.The normal case for a failed array - nothing was deleted, the array simply stopped assembling, so you want everything.

4Step by step

  1. Image every member first
    Never assemble from the physical disks directly - work from images, so a mistake in assembly never touches the originals.
  2. Add a slot per member, in order
    Including a slot for any disk that failed or is missing - mark it off rather than leaving it out.
  3. Try Auto-detect
    It reads the level, chunk and disk order from the members' own metadata. Fall back to stating them by hand only if this fails.
  4. List volumes on dynamic disks
    Windows dynamic disks can carry several volumes on one set of disks - select the one you need by name.
  5. Recover with Smart mode
    On a correctly reassembled array the filesystem is usually intact, so Smart mode is almost always right.
  6. Verify
    Open a sample of recovered files. A wrong chunk size or disk order produces a volume that mounts and returns corrupt files - opening files is the check.

Do not do this. Never let the NAS rebuild onto a replacement disk before imaging the members. A rebuild made on the wrong assumption overwrites parity and can destroy what was recoverable. Never change the disk order in the enclosure before imaging.

5Ten situations, and exactly what to do

1 of 10

NAS controller died

A 4-disk NAS lost its controller and the enclosure will not power on.

What to choose

Auto-detect - the stripe size, disk order and parity pattern come from the members' own metadata, so the original controller is not needed.

Steps
  1. Image all 4 disks first
  2. Add 4 member slots in the disks' physical order
  3. Auto-detect
  4. Recover with Smart mode, include intact files
recoveryantra raid --members d1.img d2.img d3.img d4.img --auto -o D:\NAS --include-intact
2 of 10

One disk in a RAID 5 has failed

Three of four disks are readable; the fourth will not spin up.

What to choose

Mark the failed member with a dash - RAID 5 reconstructs one missing member from parity.

Steps
  1. Image the three readable disks
  2. List members with '-' for the failed disk
  3. Auto-detect or state level 5
recoveryantra raid --members d1.img d2.img - d4.img --level 5 --chunk 65536 -o D:\Recovered
3 of 10

Site documentation gives the layout, metadata is gone

The array was reformatted before anyone realised the data was needed.

What to choose

Manual level/chunk/layout, taken from the site documentation or the controller's own label.

Steps
  1. Image every member
  2. State --level, --chunk and --layout from documentation
  3. Verify recovered files open before trusting the layout
recoveryantra raid --members d1.img d2.img d3.img --level 5 --chunk 131072 --layout left-symmetric -o D:\Recovered
4 of 10

Windows dynamic disks with two volumes

One set of two disks turns out to hold two separate volumes.

What to choose

--list-volumes first, then recover the one volume by name.

Steps
  1. Image both disks
  2. Run --list-volumes
  3. Recover the named volume with --volume
recoveryantra raid --members d1.img d2.img --list-volumes
5 of 10

A Synology or QNAP volume pool

A Synology SHR or a plain md array with LVM on top needs assembling.

What to choose

Auto-detect reads the md superblocks; the LVM layer on top is walked automatically.

Steps
  1. Image every bay
  2. Add member slots in bay order
  3. Auto-detect, recover with Smart mode
recoveryantra raid --members bay1.img bay2.img bay3.img bay4.img --auto -o D:\SHR
6 of 10

The disk order in the enclosure was changed

A well-meaning colleague reseated the disks before calling.

What to choose

Auto-detect from metadata rather than trusting the current physical order - the member order on the command line still has to match the array's own order, not the enclosure's current slots.

Steps
  1. Do NOT assume the enclosure order is the array order
  2. Auto-detect first; it reads the order from the metadata itself
  3. Confirm with a small recovered file before the full run
recoveryantra raid --members d1.img d2.img d3.img d4.img --auto -o D:\Recovered
7 of 10

RAID 6, two disks down

A larger array tolerates two failed members at once.

What to choose

Mark both missing members with dashes; RAID 6 reconstructs from double parity.

Steps
  1. Image the four readable disks
  2. List six members with two dashes for the failed ones
  3. State --level 6
recoveryantra raid --members d1.img - d3.img d4.img - d6.img --level 6 -o D:\Recovered
8 of 10

Nested RAID 10 across four disks

Two mirrored pairs striped together, common on a small business server.

What to choose

Auto-detect handles nested arrays the same way, reading the layout from metadata.

Steps
  1. Image all four disks
  2. Add slots in order
  3. Auto-detect
recoveryantra raid --members d1.img d2.img d3.img d4.img --auto --include-intact -o D:\Server
9 of 10

A Drobo enclosure

A small-business Drobo will not power on and the data is needed.

What to choose

This is the honest limit - Drobo uses BeyondRAID, a proprietary layer with no mdadm-style striping. --auto will scan for hours and find nothing.

Steps
  1. Do NOT expect --auto to detect BeyondRAID
  2. Check the hardware-help entry for what to procure instead
  3. State the limit to the client before starting
10 of 10

Recovering from a JBOD, not a striped array

The disks were simply concatenated, not striped.

What to choose

State --level jbod - files may sit whole on one member, which JBOD assembly preserves.

Steps
  1. Image every disk
  2. State --level jbod
  3. Recover with Smart mode
recoveryantra raid --members d1.img d2.img d3.img --level jbod -o D:\JBOD

6The same job at the command line

recoveryantra raid --members d1.img d2.img d3.img d4.img --auto -o D:\Recovered --include-intact
Feature 4 · CCTV / DVR recovery

Recover surveillance video that a PC calls unformatted

Recorders write their own disk layout, which is why Windows offers to format the disk. This finds the video by its structure instead, reads the recorder's own camera x time index when one survives, and writes every clip so it will actually play.

1How to get there

Home → CCTV footage.

HomeCCTV footageRecorder disk → Where to save → Finding video → Clips
CCTV / DVR recovery - point at the recorder disk or its image
  1. 1Refresh re-reads attached drives after connecting the recorder's disk.
  2. 2Path to an image an image of the recorder disk, preferred over the disk itself for anything that may be produced.
  3. 3Choose file browse to the image file named above.
app-cctv.webp - no recorder attached on this bench; captured in its honest empty state

2Read the index, or carve?

Read the recorder's own index first
cctv index reads the recorder's camera x time table in seconds, nothing written - cameras down one side, time across.
Choose this when always try this first. Most recorders keep a genuine table, and it turns a disk-wide carve into a scoped cut.
Cut one camera, one time range
cctv cut reads the index and remuxes losslessly, without carving the rest of the disk.
Choose this when you know which camera and roughly when - a shop incident, a single vehicle passing a gate.
Full carve
Scans the whole disk by structure when the index is gone - a wiped, reformatted or badly damaged recorder disk.
Choose this when the disk shows as unformatted to a PC, or the index read finds nothing usable.

3The options, and what to set them to

OptionWhat it doesWhat to choose
--device / --imageThe recorder's own disk, or an image of it.Image first for anything that may be produced - a running recorder overwrites the oldest footage, so power it down and remove the disk before it is imaged.
--min-clipIgnores fragments smaller than this many bytes.Raise it when a sweep returns very short fragments and the incident is minutes long; lower it when the event of interest is only a few seconds.
--identify-onlyReports which recorder wrote the disk, extracts nothing.Run first on any unfamiliar recorder disk. It tells you how long the real job will take and whether the format is supported.
cctv indexReads the recorder's own camera x time index without extracting anything.Before a full carve, always. On a table-less disk it says “time unknown” rather than inventing a channel.
cctv cutCuts a time range off one camera using the recorder's own index, remuxed losslessly by default.You know the camera and the window - avoids carving the whole disk for a few minutes of footage.
cctv extractCopies clips out of a scan's output folder, or a whole camera off a disk/image.After a full carve, to pull just one camera's or one clip's worth out for handover.

4Step by step

  1. Do not leave the disk in the recorder
    A running recorder keeps recording and overwrites the oldest footage first - exactly the footage you usually want.
  2. Image the disk once
    Power the recorder down, remove the disk, image it. Every later step then runs against the image.
  3. Read the index first
    cctv index reads the recorder's own camera x time table in seconds and writes nothing.
  4. Cut or scan
    If the index is real, cut the exact camera and range you need. If it is gone, scan the whole disk by structure.
  5. Check a clip before deciding what to do with it
    cctv play summarises the timeline; the app's player shows it directly.
  6. Extract, enhance or report
    Copy clips out byte-exact, sharpen a frame for the report, or build the media report - each keeps the original untouched.

Do not do this. Never leave the disk in the recorder while you decide what to do. A running recorder keeps recording and overwrites the oldest footage first - which is usually the footage you need. Power it down and image the disk once.

5Ten situations, and exactly what to do

1 of 10

Shop DVR shows as unformatted

A shop's DVR disk will not mount in a PC and Windows offers to format it.

What to choose

Do NOT format. Full carve - recorders use their own layout, which is why a PC calls the disk unformatted.

Steps
  1. Do NOT let Windows format the disk
  2. Power down the recorder, image the disk
  3. Scan the image with cctv
  4. Extract the clips found
recoveryantra cctv --image recorder.dd -o D:\Clips
2 of 10

One camera, one hour, a 4 TB disk

A car-park camera is needed between two times on a disk holding weeks of footage.

What to choose

Read the index first, then cut just that camera and range - the rest of the disk is never touched.

Steps
  1. cctv index on the image
  2. Find the camera id
  3. cctv cut with --camera and --from/--to
  4. Hand over the single clip
recoveryantra cctv cut recorder.dd --camera 3 --from 1694000000 --to 1694003300 -o D:\Clips
3 of 10

Unfamiliar recorder brand

The recorder's make is unknown and nobody wants to commit to a long carve blind.

What to choose

--identify-only first - reports which recorder wrote the disk without extracting anything.

Steps
  1. Run cctv --identify-only against the image
  2. Confirm the format is supported
  3. Then run the full carve
recoveryantra cctv --image recorder.dd --identify-only
4 of 10

The disk holds mostly padding between clips

A first pass returns thousands of very short fragments.

What to choose

Raise --min-clip to discard fragments below a sensible length for the incident.

Steps
  1. Run an initial carve
  2. Raise --min-clip for a second pass
  3. Compare clip counts before deciding
recoveryantra cctv --image recorder.dd -o D:\Clips --min-clip 262144
5 of 10

Handing one clip to an insurer

A single incident clip needs to leave the building, verified byte-exact.

What to choose

cctv download - copies one clip out, SHA-256 verified.

Steps
  1. Identify the clip with cctv clips
  2. Download it with cctv download
  3. Hand over the file and its hash
recoveryantra cctv download clip_0042.h264 -o D:\Handover
6 of 10

A frame for the incident report

One clear frame is needed as a still image for a written report.

What to choose

cctv frames captures a frame pack; the frame carries its own timestamp and hash.

Steps
  1. Play the clip to find the frame ordinal
  2. cctv frames with --from/--to around it
  3. Attach the frame pack to the report
recoveryantra cctv frames clip_0042.h264 --from 900 --to 905 -o D:\Report
7 of 10

A dark, grainy frame needs sharpening

A face or plate is barely readable in the recovered footage.

What to choose

cctv enhance runs a stated filter chain and keeps the original alongside it.

Steps
  1. Identify the frame or range
  2. Run enhance with a filter chain
  3. Report both the original and the enhanced frame, with the chain stated
recoveryantra cctv enhance clip_0042.h264 --frame 902 --chain "unsharp:amount=0.8;eq:contrast=1.1" -o D:\Report
8 of 10

The whole disk needs a media report

A summary of every clip - times, codecs, hashes - is needed for the case file.

What to choose

cctv report over the scan's output folder.

Steps
  1. Complete the carve
  2. Run cctv report against the output folder
  3. File the report with the case
recoveryantra cctv report D:\Clips -o D:\Report
9 of 10

Several clips from one camera, in bulk

One camera's whole day is needed, not the entire recorder.

What to choose

cctv extract with --camera on the disk/image form, selecting one camera's clips by id.

Steps
  1. cctv index to find the camera id
  2. cctv extract with --camera
  3. Verify the clip count against the index
recoveryantra cctv extract recorder.dd --camera 3 -o D:\Camera3
10 of 10

A table-less disk with no camera labels

The recorder's index is gone and channels cannot be named with certainty.

What to choose

Trust only what the disk gives. A carved disk with no table shows clips as inferred, never an invented channel number or a guessed clock time.

Steps
  1. Run cctv index; note it returns nothing usable
  2. Full carve instead
  3. Report times as unknown where the table does not say otherwise
recoveryantra cctv --image recorder.dd -o D:\Clips

6The same job at the command line

recoveryantra cctv index recorder.dd && recoveryantra cctv --image recorder.dd -o D:\Clips
Feature 5 · Detect devices

See every device this computer can reach, and why one cannot be used

Lists everything the operating system can see - usable or not - with the real reason: rights, a driver fault, a busy handle, media a reader cannot address. Being listed is never taken as proof of being readable.

1How to get there

Home → Detect devices - one screen with everything.

HomeDetect devices
Detect devices - every device this computer can see, usable or not
  1. 1How measured explains how state, bus, serial and health were measured.
  2. 2Refresh re-reads every attached device.
  3. 3Why? the reason a non-usable device is not selectable, in plain words.
  4. 4Show expands the device's full detail.
app-detect.webp - a real capture of this bench's attached storage

2What each state means

Run it whenever a drive seems missing
Lists everything the operating system can see - usable, unreadable, needing rights, in use, or a driver failure - and states why, never just an empty list.
Choose this when “one of my drives is not showing up”. Being listed is never treated as proof of being readable; a sector is actually read at each end.
Write the report
Saves the same findings as HTML, PDF and JSON, including the Plug-and-Play inventory and the environment (administrator? inventory available?).
Choose this when the finding needs to go to a client, an insurer, or the case file.
Skip the health read
Detection becomes a listing only, without a health probe of each usable drive.
Choose this when a machine has many drives and you want a fast inventory, or a drive is known to be failing and you do not want even a test read.

3The options, and what to set them to

OptionWhat it doesWhat to choose
--report DIRWrites the detection report - HTML, PDF and JSON - into the folder.Whenever the finding needs to be kept or handed over. The report is small, so only rights and a full disk stop it.
--no-healthSkips the health read of each usable drive.A machine with many drives, for speed; or a drive already known to be failing, to avoid even a test read of it.
--forceWrites the report even when the pre-flight objects to the destination.Only after reading the objection and confirming it does not apply.

4Step by step

  1. Connect the device
    Plug it in, or point the check at the machine holding it.
  2. Read what the computer sees
    Every device is listed with its state and the reason - usable, unreadable, needs-admin, in-use, driver-failed, or portable (a phone).
  3. Do what the row says
    Each non-usable state carries its own numbered advice - a card reader needing SDXC support, a driver to reinstall, rights to elevate.
  4. Save the report
    HTML, PDF and JSON, with the full Plug-and-Play inventory, for the client file or an insurer.

Good to know. Being LISTED is never proof of being READABLE. Detect actually reads a sector at each end of a usable drive rather than trusting that it appears in the list - flash media in particular can die from one region outward.

5Ten situations, and exactly what to do

1 of 10

A 1 TB SD card is not showing up

A card reader that only supports SDHC cannot address a card over 32 GB at all.

What to choose

Detect reads the Windows error code, not just “no media” - a media-unreadable code points at an SDXC-capable reader, not a dead card.

Steps
  1. Run Detect devices
  2. Read the Why? explanation for the card's row
  3. Buy or borrow an SDXC reader if that is the reason
recoveryantra detect
2 of 10

A drive needs administrator rights

A raw physical drive will not open for a standard user account at all.

What to choose

The row is marked needs-admin, not silently dropped from the list.

Steps
  1. Run Detect devices
  2. See the needs-admin state
  3. Relaunch as Administrator
recoveryantra detect
3 of 10

A USB bridge Windows cannot start

A 4 TB drive's UAS bridge fails with a Code 10 in Device Manager.

What to choose

Detect lists it under driver-failed with the code and the fix, instead of just omitting it from a list that shows two other drives.

Steps
  1. Run Detect devices
  2. Read the driver-failed row and its code
  3. Follow the numbered fix, or try a different cable/port
recoveryantra detect
4 of 10

A drive is in use by another program

A sharing violation is stopping the drive from being opened.

What to choose

The row is marked in-use rather than absent - close the other program first.

Steps
  1. Run Detect devices
  2. See the in-use state
  3. Close the program holding the drive, then refresh
recoveryantra detect
5 of 10

A phone is connected in MTP mode

A phone shows up but is not a drive to recover from directly.

What to choose

Detect lists it as portable and points at the phone workspace, rather than treating it as a missing disk.

Steps
  1. Run Detect devices
  2. See the portable state for the phone
  3. Open the phone recovery workspace instead
recoveryantra detect
6 of 10

A machine's built-in card reader

A laptop's SD slot is an SD host controller, not a USB device, and can be missed by a USB-only scan.

What to choose

Detect's Plug-and-Play query covers SD host / SD bus controllers as well as USB, so the built-in slot is listed too.

Steps
  1. Run Detect devices
  2. Check the PnP inventory for the SD host controller
  3. Insert the card and refresh
recoveryantra detect
7 of 10

One drive is failing among several healthy ones

You do not want a health probe touching the failing drive again.

What to choose

--no-health gives a listing-only pass, so the failing drive is not even test-read.

Steps
  1. Run Detect with --no-health
  2. Identify the failing drive by its listed state alone
  3. Move straight to imaging it
recoveryantra detect --no-health
8 of 10

A client needs the finding in writing

An insurer wants proof a drive genuinely was not accessible.

What to choose

--report writes HTML, PDF and JSON into a folder for the case file.

Steps
  1. Run Detect with --report
  2. Attach the PDF to the case notes
  3. Keep the JSON for the record
recoveryantra detect --report D:\Case\detect
9 of 10

An optical drive with a disc inserted

A CD or DVD needs to be listed alongside the hard drives.

What to choose

Detect enumerates optical drives when a disc is present, using the same drive-type check as everything else.

Steps
  1. Insert the disc
  2. Run Detect devices
  3. Confirm the optical drive is listed as usable
recoveryantra detect
10 of 10

A PnP device that never became a disk

Device Manager shows an unfamiliar entry with a driver problem, and it is unclear if it is storage at all.

What to choose

Detect's PnP inventory distinguishes real storage services from something unrelated (like a mouse with a driver fault) before calling it a missing drive.

Steps
  1. Run Detect devices
  2. Check whether the PnP entry is under a storage service
  3. Follow the fix only if it genuinely is storage
recoveryantra detect

6The same job at the command line

recoveryantra detect --report D:\Case\detect
Feature 6 · Rescue USB

Carry the tool to a machine, or make it boot again

Three honest choices, never blurred into one “bootable” button: a portable kit that erases nothing, a real bootable stick that writes a boot image and erases the target, and adding this tool's ISO onto an existing Ventoy stick.

1How to get there

Home → Rescue USB.

HomeRescue USBChoose stick → What to put on it → Writing → Ready
Make a rescue USB - portable kit, bootable, or copy an ISO on
  1. 1Portable kit keeps files on the stick; the machine still starts from its own disk.
  2. 2Bootable erases the stick and writes a real boot image, for a machine that will not start.
  3. 3Copy an ISO on keeps files on a Ventoy-style stick that boots by menu.
  4. 4Why? explains what each option really does before you commit to it.
app-usb.webp - the three honest choices, a real capture

2Three honest choices

Portable kit
Copies the tool's files onto the stick. Nothing is erased.
Choose this when the machine still starts from its own disk and you just need to carry the tool to it.
Bootable
Writes a real boot image (isowrite) - the ONLY option that actually makes the stick start a machine.
Choose this when the machine will not start at all. This ERASES the stick; the target must be genuinely removable, never the system disk.
Copy an ISO on
Keeps existing files, for a Ventoy-format stick that boots several images by its own menu.
Choose this when you already carry a Ventoy stick and want to add this tool's boot image to it without erasing what is there.

3The options, and what to set them to

OptionWhat it doesWhat to choose
--targetThe mounted USB stick to write to.Confirm you have chosen the rescue stick, never an external evidence drive - existing files on it are left alone by the portable-kit route, but Bootable erases whatever is there.
--payload-isoA live Linux ISO, to make the stick actually bootable.Supply this when the target machine will not start, so the stick can boot the ISO and read the drive in place.
--payload-dirAn extracted WinPE or live-Linux tree instead of an ISO.Your organisation maintains its own validated boot environment instead of the bundled ISO.
--toolA specific build of the CLI to copy onto the stick.Preparing a stick for a machine that must run a version already validated for the case.

4Step by step

  1. Choose the stick
    The write refuses anything that does not report itself as removable hardware - the system disk can never be a target.
  2. Choose what goes on it
    Portable kit (files only), Bootable (erases, writes a real boot image), or Copy an ISO on (Ventoy, keeps files).
  3. Confirm
    Bootable requires an explicit confirmation before anything is erased - the choice is never made silently.
  4. Write, then verify
    A Bootable write is read back and compared by SHA-256, because dying flash can report a happy write and store something else.

Do not do this. Bootable ERASES the stick. The write refuses a target that does not report itself as removable hardware, and the system disk can never be chosen - but confirm by hand that the stick holds nothing you need before writing.

5Ten situations, and exactly what to do

1 of 10

A laptop will not get past the logo

Windows update failed half way and the machine will not boot at all.

What to choose

Bootable USB - the disk is usually healthy; it is the machine that will not start.

Steps
  1. Do NOT run Windows recovery or “reset this PC” first - both write to the disk
  2. Prepare a Bootable rescue stick
  3. Boot the failing machine from it
  4. Recover the documents and photos onto separate storage
recoveryantra bootusb --target E:\ --payload-iso rescue.iso
2 of 10

Carrying the tool to a machine that must not be touched

The machine's own disk must stay exactly as found.

What to choose

Portable kit - files only, the machine still starts from its own disk, nothing is erased.

Steps
  1. Prepare a Portable kit on a spare stick
  2. Run the tool from the stick on the target machine
  3. Nothing is written to the stick's existing contents
recoveryantra bootusb --target E:\
3 of 10

You already carry a Ventoy stick

A multi-boot Ventoy stick already holds several rescue ISOs.

What to choose

Copy an ISO on - adds this build's boot image without erasing what is already there.

Steps
  1. Confirm the stick is Ventoy-formatted
  2. Copy the ISO on
  3. Boot it and choose the new entry from Ventoy's menu
4 of 10

A machine with no Windows install left to fall back on

A wipe or a failed reinstall has left nothing bootable.

What to choose

Bootable, then use the guided acquire command on the booted stick to image the drive.

Steps
  1. Prepare a Bootable stick with the live payload
  2. Boot the target machine from it
  3. Run the guided acquire, numbered drives, no path-typing
recoveryantra bootusb --target E:\ --payload-iso rescue.iso
5 of 10

The organisation maintains its own boot environment

A validated WinPE tree already exists internally.

What to choose

--payload-dir instead of the bundled ISO.

Steps
  1. Point --payload-dir at the extracted WinPE tree
  2. Confirm and write
  3. Boot and validate against the known environment
recoveryantra bootusb --target E:\ --payload-dir D:\WinPE
6 of 10

Wrong stick nearly chosen

Two USB drives are attached: the rescue stick and an evidence drive from another case.

What to choose

The write refuses anything reporting as the system disk, but the operator still has to confirm the right removable target by hand.

Steps
  1. Check the drive letter and size before confirming
  2. Never proceed on “probably the right one”
  3. Confirm only once the target is verified
7 of 10

The stick needs to boot on old BIOS and new UEFI machines

Field machines are a mix of old and new hardware.

What to choose

The bootable payload is written to boot both BIOS and UEFI, so one stick covers the fleet.

Steps
  1. Prepare the Bootable stick once
  2. Test on one BIOS machine and one UEFI machine before a field trip
  3. Carry the same stick to both
recoveryantra bootusb --target E:\ --payload-iso rescue.iso
8 of 10

A specific validated CLI build must be on the stick

The case requires a version already proven for that matter.

What to choose

--tool names the exact build to copy instead of the one running now.

Steps
  1. Locate the validated build
  2. Prepare with --tool pointing at it
  3. Confirm the version on the stick before use
recoveryantra bootusb --target E:\ --tool D:\Builds\RecoverYantra-cli-7.8.10.exe
9 of 10

A stick that looks fine but will not actually boot

An ISO lacking a USB boot record gets written perfectly and still will not start the machine.

What to choose

The write checks the ISO for a boot record before writing, so this is caught before it is discovered at the customer's site.

Steps
  1. Prepare the Bootable stick
  2. Read the pre-write check
  3. Choose a different ISO if it warns there is no boot record
recoveryantra bootusb --target E:\ --payload-iso rescue.iso
10 of 10

A wiped, unrelated stick found on the bench

An old stick is picked up without checking what is already on it.

What to choose

Bootable ERASES the target entirely - confirm nothing needed is on it before writing.

Steps
  1. Check the stick's current contents first
  2. Confirm it can be erased
  3. Only then run Bootable
recoveryantra bootusb --target E:\ --payload-iso rescue.iso

6The same job at the command line

recoveryantra bootusb --target E:\ --payload-iso rescue.iso
Feature 7 · Ransomware recovery

Find what survived without paying, and say honestly what did not

Some of what looks encrypted is not: renamed-only files, partial encryption, and originals still sitting in free space, temp copies or shadow copies. Those come back with no key. What is genuinely encrypted is stated as encrypted.

1How to get there

Home → After ransomware.

HomeAfter ransomwareWhat was hit → What hit you → What survived
After ransomware - point at the encrypted folder or drive
  1. 1Path to the folder or drive the affected folder or drive, holding encrypted files and the ransom note.
  2. 2Choose folder browse to the affected location.
  3. 3Why? explains what the first check does.
  4. 4Why? explains what the free-recovery step looks for.
app-ransomware.webp - a real capture of the workspace

2Triage, decryptor, or the full verdict?

Recover originals first
Finds the decryption-free ORIGINALS the ransomware left behind - deleted files still in free space, temp/autosave copies, Recycle Bin, cloud caches, database WAL sidecars.
Choose this when on every incident, and run it early. This is time-critical: continued use of the machine overwrites exactly the free space the originals are sitting in.
Identify the family, check for a decryptor
Names the strain from the files and the ransom note, and checks the offline decryptor index before any other route is considered.
Choose this when before any payment discussion, and before assuming nothing can be recovered without a key.
Full verdict
Fuses triage, identification and originals recovery into one stated outcome with a priority order - the single command for a client-facing answer.
Choose this when you need one defensible answer, for a client or an insurer, rather than three separate reports.

3The options, and what to set them to

OptionWhat it doesWhat to choose
--triageReports how many files are recoverable with no key, salvageable, or genuinely encrypted.Run early, before anyone commits to a recovery plan or a payment discussion.
--recover-originalsFinds decryption-free originals - free space, temp/autosave, Recycle Bin, cloud caches, DB sidecars.Run on every incident. The highest-value step, and time-critical - stop using the machine first.
--decryptor FAMILYShows the offline decryptor index for the identified family, or that none exists.Always check before assuming a payment is the only route. Never substitute a tool found by searching.
--verify-toolHashes a downloaded decryptor and checks it against the catalog.Always, before running any downloaded decryptor against client data - an unverified executable is a second incident waiting to happen.
--verdictThe full flow fused into one outcome: triage + identification + originals recovery.The single command to run for a client- or insurer-facing answer.
--esxi FAMILY / --rebuild-vmdkThe hypervisor-specific playbook, and rebuilding a VMDK descriptor when only it was encrypted.A hypervisor or Linux estate rather than a workstation - the descriptor is small and often the only thing actually encrypted.
--lotlScans recovered scripts, registry exports and memory strings for a BitLocker key or archive password the attacker left behind.A living-off-the-land case that abused BitLocker, EFS or a bundled 7-Zip - the secret is often still on the machine.

4Step by step

  1. Stop using the machine
    Continued use overwrites the free space where the free wins are sitting. This is the single most time-critical step.
  2. Point at the affected files
    A folder or drive of encrypted files and the ransom note, or just the observed filenames and note text if the machine cannot be reached.
  3. Identify the strain
    The family decides what is realistically recoverable, and whether a published decryptor exists.
  4. Find the free wins
    Deleted originals in free space, temp/autosave copies, shadow copies, NAS snapshots - recovered with no key and no payment.
  5. Check for a legitimate decryptor
    Verified against the catalog by hash before it ever touches client data.
  6. State the recovery plan
    What came back for free, what a decryptor can reach, and what is genuinely gone - stated honestly, not implied.

Do not do this. Do not delete the encrypted files - a decryptor may be published later, and without the files it will be useless to you. Do not reinstall or wipe the machine yet; it holds the evidence of how the attacker got in. Do not pay before checking - a good proportion is often recoverable for nothing.

5Ten situations, and exactly what to do

1 of 10

A file server hit overnight

190,000 files renamed with an unfamiliar extension and a ransom note in every folder.

What to choose

--verdict - triage, identification and originals recovery fused into one stated outcome.

Steps
  1. Stop using the server
  2. Run the full verdict
  3. Report what came back with no key, and what genuinely needs one
recoveryantra ransomware --verdict D:\Affected
2 of 10

Deciding whether to pay

The attacker is demanding payment and a decision is needed within hours.

What to choose

--triage first, always - many files come back for nothing before payment is even discussed.

Steps
  1. Do NOT pay before checking
  2. Run triage over the affected folder
  3. Weigh the free recovery against the demand
recoveryantra ransomware --triage D:\Affected
3 of 10

Only a photo of the ransom note exists

The affected machine cannot be reached directly; a client emailed a screenshot.

What to choose

--names / --note-file - identify from observed filenames and the note text alone.

Steps
  1. Type the observed filenames
  2. Supply the note text as a file
  3. Identify the family from those alone
recoveryantra ransomware --names encrypted_1.locked --note-file note.txt
4 of 10

Deleted originals may still be in free space

The strain renames and re-writes files, deleting the originals.

What to choose

--recover-originals, with the USN journal if available for the original paths as well as content.

Steps
  1. Run --recover-originals on the affected volume
  2. Add --usnjrnl for original paths where available
  3. This is the highest-value, most time-critical step
recoveryantra ransomware --recover-originals D:\Affected --usnjrnl usnjrnl.bin
5 of 10

A downloaded decryptor needs checking

A tool claiming to be the family's legitimate decryptor was found online.

What to choose

--verify-tool - hash it against the catalog before it ever runs against client data.

Steps
  1. Do NOT run an unverified decryptor on the only copy
  2. Hash it with --verify-tool
  3. Only proceed if it matches the catalog entry
recoveryantra ransomware --decryptor lockbit --verify-tool decryptor.exe
6 of 10

An ESXi host was hit

A hypervisor's datastore shows encrypted VMDK descriptors overnight.

What to choose

--esxi playbook - descriptor rebuild, intermittent-encryption damage map, keystream reuse specific to the family.

Steps
  1. Identify the strain first
  2. Run the --esxi playbook for that family
  3. Rebuild descriptors for intact flat-VMDKs
recoveryantra ransomware --esxi esxiargs
7 of 10

Only the VMDK descriptor was encrypted

The flat data file is intact but its small descriptor was hit.

What to choose

--rebuild-vmdk with the flat file's exact byte size makes the intact data readable again.

Steps
  1. Get the exact size of the -flat.vmdk itself, not the datastore listing
  2. Rebuild the descriptor
  3. Mount the VM from the rebuilt descriptor
recoveryantra ransomware --rebuild-vmdk vm-flat.vmdk --flat-size 107374182400
8 of 10

A QNAP or Synology NAS was hit

The visible backups were deleted by the attacker before encrypting.

What to choose

--nas-snapshots - enumerates snapshots from the volume's own LVM metadata, often the fastest complete recovery.

Steps
  1. Export the LVM2 metadata from the NAS
  2. Run --nas-snapshots against it
  3. Restore from the earliest pre-attack snapshot found
recoveryantra ransomware --nas-snapshots lvm_metadata.txt
9 of 10

BitLocker was abused to lock the drive

A living-off-the-land attack turned on BitLocker with the attacker's own key.

What to choose

--lotl - scans recovered scripts, registry exports and memory strings for the recovery key the abuse left behind.

Steps
  1. Recover scripts, registry exports and memory strings first
  2. Run --lotl over them
  3. The secret is often still on the machine, not an exfiltrated RSA key
recoveryantra ransomware --lotl D:\Recovered
10 of 10

A memory image was captured at the scene

The machine was still running when first responders arrived.

What to choose

--verdict --memory - some strains leave key material in memory; it only helps if capture happened before shutdown.

Steps
  1. Capture memory before powering down, always
  2. Run --verdict with --memory pointed at the capture
  3. Report honestly if no key material was found
recoveryantra ransomware --verdict D:\Affected --memory memory.raw

6The same job at the command line

recoveryantra ransomware --verdict D:\Affected
Feature 8 · Database recovery

Get rows back when the server will not start

Rows are stored on pages inside the file, and those pages survive damage that stops the server. They are read straight out of them, deleted rows included - flagged, never mistaken for live data.

1How to get there

Home → Database file.

HomeDatabase fileChoose the file → What it is → The rows → Save them
Database file recovery - point at the data file
  1. 1Path to the database file the data file to read - engine identified automatically.
  2. 2Choose file browse to the database file.
  3. 3What this product recovers the coverage matrix: every database family this build covers, and its recovery tier.
app-database.webp - a real capture of the workspace

2Identify, or recover directly?

Identify first
Names the engine and the method that applies before anything else runs.
Choose this when always, on any database file. It decides whether this is a ten-minute job or a specialist one.
Recover records
Reads rows straight off the file's own pages, including deleted rows - which come back flagged, never mistaken for live data.
Choose this when the server will not start or will not attach the file, and the most recent backup is unusable.
Check the coverage matrix
Lists every database family this build covers and the tier of recovery available.
Choose this when scoping or quoting a job before committing to it - a family at identify-and-route tier is not row-level recovery.

3The options, and what to set them to

OptionWhat it doesWhat to choose
--identifyNames the engine and the recovery method for a file, without recovering anything.Run this first, on any database file, every time.
--coverageLists every database family covered and its recovery tier.Scoping a job or quoting - quote against the tier a family is actually listed at.
--recover PATHRecovers records from a database file straight off its own pages.Work from a COPY, with the server instance offline. Extracting from a file a running engine is writing to produces rows from a moment that never existed as one consistent state.
--memoThe memo side-file (.dbt/.fpt) for a dBase .dbf whose long text fields live outside the main file.Required whenever a .dbf has one - without it, long text fields come back empty.
--out CSVWrites all records, deleted rows flagged, to CSV.Whenever rows are going to be reviewed, handed to a client, or loaded into a working server. Preserve the deleted-flag column - an unflagged export presents recovered deleted rows as live data.

4Step by step

  1. Is the server running or stopped?
    Take the instance offline first, or work from a copy - a running engine is still writing to the file.
  2. Identify the engine
    Names the database and the method that applies before you commit to anything.
  3. Check for a usable backup
    A recent, intact backup is always faster than page-level recovery - only recover from the raw file when it genuinely is not usable.
  4. Choose the destination
    A folder off the affected drive with room for the CSV export.
  5. Recover
    Rows come off the file's own pages, including deleted ones, which are flagged rather than presented as live data.

Do not do this. Never run the vendor's repair-with-data-loss-allowed tool against the only copy of a database file. It works by DELETING what it cannot fix. Copy the file first and recover from the copy.

5Ten situations, and exactly what to do

1 of 10

SQL Server will not attach the MDF

A 40 GB MDF is refused by the instance after an unclean shutdown.

What to choose

Identify first, then recover straight from the file - working from a copy, instance offline.

Steps
  1. Copy the MDF off the affected drive
  2. Identify it
  3. Recover with --recover, write to CSV
  4. Deleted rows arrive flagged
recoveryantra db --recover D:\Copy\accounts.mdf --out D:\Out\accounts.csv
2 of 10

An unknown database file turns up in a recovery

A .db or .mdf file appears among recovered files and nobody is sure what it is.

What to choose

--identify - names the engine and the method that applies before anything else is decided.

Steps
  1. Run --identify against the file
  2. Read the stated recovery tier
  3. Decide whether it is a quick job or a specialist one
recoveryantra db --identify D:\Recovered\unknown.db
3 of 10

A dBase point-of-sale file with long notes

A .dbf recovers but its comment fields come back empty.

What to choose

Supply the memo side-file - --memo - alongside the .dbf.

Steps
  1. Locate the matching .dbt/.fpt file
  2. Recover with --memo pointed at it
  3. Confirm the long text fields are populated
recoveryantra db --recover D:\Copy\sales.dbf --memo D:\Copy\sales.dbt --out D:\Out\sales.csv
4 of 10

Scoping a job before quoting

A client asks whether their Firebird database can be recovered at all.

What to choose

--coverage - states the tier available for that family before any promise is made.

Steps
  1. Run --coverage
  2. Find the family and its listed tier
  3. Quote against the tier, not against “it is on the list”
recoveryantra db --coverage
5 of 10

The vendor's repair tool is the only other option offered

A forum suggests running the database's own repair-with-data-loss-allowed tool.

What to choose

Do NOT run it on the only copy - it works by DELETING what it cannot fix. Recover from a copy of the raw file instead.

Steps
  1. Copy the file first, always
  2. Do NOT run vendor repair-with-data-loss on the only copy
  3. Recover from the copy
6 of 10

Rows will be reviewed by someone else

The recovered data is going to a client's accountant for review.

What to choose

--out CSV, with the deleted-flag column kept - never strip it before handing rows over.

Steps
  1. Recover with --out to CSV
  2. Keep the deleted-flag column intact in the handover
  3. State plainly which rows are deleted
recoveryantra db --recover D:\Copy\ledger.mdf --out D:\Out\ledger.csv
7 of 10

A SQLite app database with deleted rows

A small business app's SQLite file needs its deleted customer records back.

What to choose

SQLite deleted-row recovery reads freeblocks, unallocated pages and the WAL - identify first to confirm the engine.

Steps
  1. Identify the file
  2. Recover, writing deleted rows flagged
  3. Check the WAL was included, not just the main file
recoveryantra db --recover D:\Copy\app.sqlite --out D:\Out\app.csv
8 of 10

The server keeps restarting on its own

Automatic recovery attempts are running every time the service starts.

What to choose

Stop the service and work from a copy - each restart writes to the file you are trying to recover.

Steps
  1. Stop the database service
  2. Copy the data file off the drive
  3. Recover from the copy only
9 of 10

A backup exists but is also corrupt

The most recent nightly backup will not restore either.

What to choose

Fall back to recovering straight from the live data file, once it is confirmed the backup genuinely cannot be used.

Steps
  1. Confirm the backup will not restore
  2. Copy the live data file
  3. Recover with --recover, --out to CSV
recoveryantra db --recover D:\Copy\db.mdf --out D:\Out\db.csv
10 of 10

11.2 million rows across 63 tables

A 40 GB MDF that will not attach needs its entire contents out for review.

What to choose

Recover the whole file to CSV per table; deleted rows are marked so nobody mistakes them for live data.

Steps
  1. Copy the MDF
  2. Identify to confirm the engine
  3. Recover the whole file, --out to CSV
  4. Confirm the flagged-deleted count matches expectations
recoveryantra db --recover D:\Copy\erp.mdf --out D:\Out\erp.csv

6The same job at the command line

recoveryantra db --identify D:\Copy\data.mdf && recoveryantra db --recover D:\Copy\data.mdf --out D:\Out\data.csv
Feature 9 · Mail / PST recovery

Read a mailbox Outlook already gave up on

Outlook calling a file damaged means the structures a normal reader depends on are gone. This sweeps the file for the messages themselves and validates each one by its own contents, not by an index that no longer exists.

1How to get there

Home → Mailbox.

HomeMailboxChoose the mailbox → What is in it → Save them
Mail/mailbox recovery - point at the store the client refuses to open
  1. 1Path to the mailbox the mailbox file or folder - PST/OST, mbox, Maildir or .eml.
  2. 2Choose file browse to a single-file mailbox.
  3. 3Choose folder browse to a Maildir-style folder of messages.
  4. 4How a mailbox is read - and salvaged explains the salvage route used when the store's own index is gone.
app-mail.webp - a real capture of the workspace

2eml, or mbox?

List first
Shows what is in the mailbox, and whether it read cleanly or had to be salvaged, before anything is exported.
Choose this when always, before committing to a full export - a salvaged read may not recover the original folder structure, and that changes what you promise.
Export to .eml
One file per message, so each can be reviewed individually or dragged straight back into Outlook.
Choose this when the messages are going back into Outlook, or being reviewed one at a time.
Export to mbox
One file holding the whole mailbox.
Choose this when the destination is Thunderbird, Apple Mail, or a review platform that takes mbox as a single import.

3The options, and what to set them to

OptionWhat it doesWhat to choose
pathThe mail store itself - PST/OST, mbox, Maildir or .eml, including a store the client refuses to open.Take a copy first and work from the copy, always.
-o / --outputThe folder recovered messages are written into.Never the folder holding the store being read.
--listShows what is in the mailbox without exporting anything, and whether the store read cleanly or was salvaged.Run first, every time. It tells you whether the folder structure will survive the export.
--formateml (one file per message) or mbox (one file for the whole mailbox).eml for Outlook or per-message review; mbox for Thunderbird, Apple Mail or a review platform. Neither is a .pst - this extracts messages, it does not rebuild an Outlook store file.

4Step by step

  1. Do not run scanpst.exe on the only copy
    It writes to the file, and on a badly damaged store it can make things worse.
  2. Copy the store first
    Work on the copy, never the original.
  3. Choose the store
    PST/OST, mbox, Maildir or .eml - including a store Outlook calls damaged.
  4. List first
    See what is in it and whether it read cleanly or needed salvage, before anything is exported.
  5. Choose the destination
    Never the folder holding the store being read.
  6. Save them
    Export to .eml (per message) or mbox (whole mailbox in one file).

Do not do this. Never run Outlook's scanpst.exe (or any repair tool) on the only copy of a damaged store. It writes to the file, and on a badly damaged store it can make things worse. Copy the file first, always.

5Ten situations, and exactly what to do

1 of 10

Outlook says the PST is damaged

Outlook refuses to open a client's PST and offers to run its repair tool.

What to choose

Do NOT run scanpst.exe on the only copy. Copy the file first, then let this tool read it - the store is swept for messages by content, not by the index Outlook says is gone.

Steps
  1. Copy the PST
  2. Do NOT run scanpst.exe on the original
  3. List the store from the copy
  4. Export to .eml
recoveryantra mail D:\Copy\outlook.pst --list
2 of 10

The store's header and index pages are zeroed

A badly corrupted PST returns nothing to a normal reader at all.

What to choose

The salvage sweep validates candidate messages by their own content, not by an index that no longer exists.

Steps
  1. Copy the file
  2. List it - the tool reports whether a normal or salvaged read was used
  3. Export whatever the sweep recovers
recoveryantra mail D:\Copy\damaged.pst -o D:\Out --format eml
3 of 10

Messages are going back into Outlook

The client wants the recovered mail dragged straight back into their mailbox.

What to choose

--format eml - one file per message, exactly what Outlook takes by drag-and-drop.

Steps
  1. List first
  2. Export with --format eml
  3. Drag the .eml files into Outlook
recoveryantra mail D:\Copy\outlook.pst -o D:\Out --format eml
4 of 10

Migrating to Thunderbird

The recovered mailbox is going into Thunderbird as one import.

What to choose

--format mbox - a single file Thunderbird imports directly.

Steps
  1. List first
  2. Export with --format mbox
  3. Import the single mbox file into Thunderbird
recoveryantra mail D:\Copy\outlook.pst -o D:\Out --format mbox
5 of 10

A Linux mail server's Maildir

A Maildir folder of individual message files needs recovering.

What to choose

Point at the Maildir folder directly - it is read the same way as a single-file store.

Steps
  1. Copy the Maildir folder
  2. List it
  3. Export to .eml or mbox as needed
recoveryantra mail D:\Copy\Maildir --list
6 of 10

An OST that will not sync and Exchange is gone

The Exchange account no longer exists, and the local OST is the only copy.

What to choose

OST is read the same as PST - list first, then export.

Steps
  1. Copy the OST
  2. List it to see what survived
  3. Export to .eml for review
recoveryantra mail D:\Copy\archive.ost -o D:\Out --format eml
7 of 10

The folder structure needs to survive the export

The client wants their folders, not one flat pile of messages.

What to choose

List first and read whether the read was normal or salvaged - a salvaged read may not preserve folder structure, and that has to be said honestly.

Steps
  1. List first
  2. Check whether the read was normal or salvaged
  3. State plainly if folder structure did not survive
recoveryantra mail D:\Copy\outlook.pst --list
8 of 10

A single .eml needs re-checking

One suspicious message needs its own honest read, not a whole mailbox export.

What to choose

Point the path directly at the .eml file - the same command reads a single message.

Steps
  1. Point mail at the single .eml
  2. List to confirm it reads cleanly
recoveryantra mail D:\Copy\message.eml --list
9 of 10

Comparing a salvaged read against a renamed image

Confirming the salvage sweep is not just finding noise.

What to choose

The sweep validates by content, so a renamed non-mail file returns nothing - list shows 0 messages rather than false hits.

Steps
  1. Run --list against a known non-mail file renamed .pst
  2. Confirm 0 messages are found
  3. Trust the sweep's positive results accordingly
recoveryantra mail D:\Copy\notreally.pst --list
10 of 10

2,000 messages need to be one usable mailbox, not loose files

A large PST recovers a large number of individual messages.

What to choose

Export to .eml with the index.csv that comes with it, or choose mbox for one file - either way it is a usable mailbox, not 2,000 unmanageable loose files.

Steps
  1. List first to see the count
  2. Choose eml (with index.csv) or mbox for the destination platform
  3. Hand over the export with the index
recoveryantra mail D:\Copy\outlook.pst -o D:\Out --format eml

6The same job at the command line

recoveryantra mail D:\Copy\outlook.pst -o D:\Out --format eml
Feature 10 · Cloud sync recovery

Acquire mail the organisation owns and authorises

After an incident touching a largely virtual estate, the cloud is the estate. The organisation's own administrator authorises the collection, the scope is recorded before anything is taken, and mail arrives as .eml so it opens anywhere.

1How to get there

The cloud workflow runs from the CLI and the export-ingest screen; there is no numbered wizard for it yet.

HomeCloud
Authorised cloud acquisition - ingest a provider export or collect live
  1. 1The stages of a collection the eight published stages of an authorised collection, shown free, before anything is touched.
  2. 2Path to the export file the provider's own export package to ingest offline.
  3. 3Output folder where the .eml files, manifest and error report are written.
app-cloud.webp - no live tenant on this bench; captured in its honest empty state

2Ingest, collect, or check caches?

steps
Shows the stages of an authorised cloud acquisition, in the industry order, free.
Choose this when you want to see the whole procedure before starting anything.
ingest
Takes in a provider EXPORT package the organisation's own admin already produced - offline, no API call.
Choose this when the organisation's administrator has already exported through Purview or Vault and handed you the package.
collect
Acquires ONE mailbox the organisation owns, live over the provider API, with an access token.
Choose this when no export exists yet and you are authorised to collect live - scope is applied before anything is taken.
caches
Finds local cloud-sync caches (OneDrive/Dropbox/Drive) on an already-recovered tree - entirely offline.
Choose this when a recovered disk or folder tree needs checking for locally-cached cloud files, with no API access at all.

3The options, and what to set them to

OptionWhat it doesWhat to choose
--providerThe cloud provider (e.g. microsoft365).Named to match the organisation's actual tenant.
--accountsAccounts in scope, comma-separated.State exactly what the authority covers - collecting a whole mailbox when the authority covers a date range is over-collection, and you answer for it.
--basis / --ownsThe lawful authority for the acquisition, and an assertion the organisation owns the accounts.Record the real basis - owner instruction, warrant, or a statutory power - every time.
ingest exportReads a provider export package offline.Whenever the organisation's admin has already produced the export - no live API call is needed or made.
collect --tokenAn OAuth access token for the tenant, for a live collection.Only ever the organisation's own authorised token. A token found on a seized device is NEVER used here - that route is identify-and-report only.
caches rootA folder to scan for local provider caches.A recovered tree, entirely offline, when local sync caches may hold copies no longer in the cloud.

4Step by step

  1. See the stages
    cloud steps shows the industry-standard order before anything is touched, free.
  2. Record the authority
    The operator, the organisation, the accounts in scope and the lawful basis - before anything is collected.
  3. Ingest an export, or collect live
    Prefer an export the organisation's own admin already produced; collect live only when authorised and no export exists.
  4. Apply the scope precisely
    The date range is applied by the provider; keywords are matched against the DECODED message, not a truncated preview.
  5. Check local caches too
    A recovered machine may hold OneDrive/Dropbox/Drive caches with copies the cloud itself no longer has.
  6. Review the error report
    Items that did not come back are named separately, so a partial collection is never silently presented as complete.

Do not do this. Never collect a whole mailbox when the authority covers a date range - that is over-collection, and you answer for it. A token found on a seized device is never used to collect; that route is identify-and-report only.

5Ten situations, and exactly what to do

1 of 10

An admin already exported through Purview

The organisation's own administrator produced a Purview PST export.

What to choose

ingest - reads the export package offline, no API call at all.

Steps
  1. Record the authority
  2. Ingest the export package
  3. Review the manifest and error report
recoveryantra cloud ingest export.pst -o D:\Out --provider microsoft365 --basis "owner instruction"
2 of 10

One mailbox needs collecting live

No export exists and the organisation has authorised a live collection.

What to choose

collect with the organisation's own token - never a token found on a seized device.

Steps
  1. Confirm the organisation owns the account
  2. Collect with an authorised token
  3. Scope to exactly the accounts named
recoveryantra cloud collect --account user@org.com --token TOKEN -o D:\Out --provider microsoft365 --owns
3 of 10

The authority only covers a date range

The warrant or instruction names three months, not the whole mailbox.

What to choose

Apply the date range through the provider's own filter - collecting the whole mailbox is over-collection.

Steps
  1. Record the exact date range in scope
  2. Collect only that range
  3. Do NOT collect the whole mailbox "to be safe"
recoveryantra cloud collect --account user@org.com --token TOKEN -o D:\Out --basis "warrant, 3-month range"
4 of 10

A seized laptop has a stored cloud token

A recovered browser profile contains a saved OAuth token for the account.

What to choose

That token is NEVER used to collect. This route is identify-and-report only.

Steps
  1. Report the token was found
  2. Do NOT use it to collect the mailbox
  3. Seek the organisation's own authorised route instead
5 of 10

A recovered laptop has a OneDrive cache

A recovered machine may hold local copies of files no longer in the cloud.

What to choose

caches - entirely offline, no API access needed.

Steps
  1. Recover the machine's tree first
  2. Run caches against the recovered folder
  3. Check for files present locally but not in the live account
recoveryantra cloud caches D:\Recovered
6 of 10

A client wants to see the procedure before agreeing to anything

Trust needs building before an authorisation is signed.

What to choose

steps - the industry-standard stages, free, before any account is touched.

Steps
  1. Run cloud steps
  2. Walk the client through each stage
  3. Get the authorisation recorded before collecting
recoveryantra cloud steps
7 of 10

Keywords must match the real message, not a preview

The provider's own search only checks a truncated body preview.

What to choose

Keyword filtering runs against the DECODED message here, because a truncated preview would silently under-collect.

Steps
  1. State keywords in scope
  2. Collect with the keyword filter applied
  3. Trust the match is against full decoded content
recoveryantra cloud collect --account user@org.com --token TOKEN -o D:\Out
8 of 10

Some items fail to collect

A live collection over the API can fail on individual items.

What to choose

The separate error report names every failed item - a failure buried in a manifest nobody opens is a silent under-delivery.

Steps
  1. Complete the collection
  2. Read the separate error report
  3. Report the named failures to the client, not just a total count
9 of 10

Output must be reviewable anywhere

The collected mail needs to open in an ordinary tool, not this product only.

What to choose

Output is always .eml, never raw provider JSON.

Steps
  1. Ingest or collect as appropriate
  2. Confirm the output is .eml with a manifest
  3. Hand the .eml files and manifest to the reviewer
recoveryantra cloud ingest export.pst -o D:\Out
10 of 10

Custodians need to be picked before anything is taken

A directory lists many accounts; only some are in scope.

What to choose

List custodians and flag each in or out of scope BEFORE anything is collected.

Steps
  1. List the directory of custodians
  2. Mark exactly which are in scope
  3. Collect only the flagged accounts
recoveryantra cloud collect --account user@org.com --token TOKEN -o D:\Out --accounts user@org.com

6The same job at the command line

recoveryantra cloud ingest export.pst -o D:\Out --provider microsoft365 --basis "owner instruction"
Feature 11 · Network / remote imaging

Image a drive on another machine, without travelling to it

An agent on the far machine reports in and offers its disks read-only - it never takes orders from the console. A machine that cannot be switched off is frozen with a snapshot taken on that machine, so the copy is one instant, not a smear of a running system.

1How to get there

Home → Network drive.

HomeNetwork drivePair → Which drive → Copying → Done
Network / remote imaging - pair with a machine and copy a disk it is not using
  1. 1Keep looking automatically keeps discovering agents on the network automatically.
  2. 2Scan again runs one more discovery pass.
  3. 3Check every machine tests whether every enrolled endpoint is currently reachable.
  4. 4Host address the target agent's address.
  5. 5Port the agent's listening port, 45455 by default.
app-remote.webp - no paired agent on this bench; captured in its honest empty state

2Discover, roster, or live?

Discover on the network
remote discover finds agents already running nearby, no prior enrolment needed.
Choose this when a machine on the same network needs imaging now, and the agent has not been pushed out in advance.
Enrolled fleet + roster
An agent pushed out with the rest of the fleet software reports in on its own; remote roster lists what has checked in.
Choose this when you are responsible for many machines and do not want the first hour of an incident spent working out how to reach one.
Live acquisition
remote live freezes a volume on a RUNNING machine through a snapshot taken on that machine, then images the snapshot.
Choose this when the machine genuinely cannot be switched off - a server mid-shift, a workstation that must keep working.

3The options, and what to set them to

OptionWhat it doesWhat to choose
remote agentRuns on the target machine and offers its disks read-only.The far machine, always - it never takes orders from the console, only reports in.
remote discover / listFinds agents on the network, and lists the disks one is offering.No fleet enrolment yet - discovery works without it, on the same network segment.
remote imageCopies a disk that is not in use, from the target agent to a local file.The far machine's disk is idle - a spare drive, a machine already powered off but network-reachable via a live boot.
remote roster / sweepLists enrolled endpoints and whether each is currently reachable; sweep asks every endpoint one question at once.A fleet with the agent already deployed - pick the machine from a list instead of scanning.
remote volumes / liveLists volumes on a running endpoint and whether it can be frozen; live acquires one through a snapshot taken there.The machine cannot be switched off - a snapshot freezes one instant even though the machine keeps running.
remote package --msiBuilds an installable agent, and a Windows MSI for Group Policy/Intune/SCCM push.Deploying the agent ahead of time across a fleet, before any incident.

4Step by step

  1. Pair with the other machine
    Run the agent on the target, or confirm it has already reported in on the roster.
  2. Find the drive
    remote discover / remote list for an ad-hoc pairing, or remote roster for an enrolled fleet.
  3. Choose idle, or live
    A disk not in use images directly; a running machine's volume needs remote live, which freezes it first.
  4. Choose where to save
    Local storage on this machine, with room for the whole disk or volume.
  5. Copy
    The image is verified on arrival; a short image is reported failed rather than handed over as complete.
  6. Done
    Recover from the local image exactly as from any other - the network transfer is finished at that point.

Do not do this. Never install the agent on a machine already under suspicion mid-investigation - it announces the investigation and changes the machine. Enrolled does not mean reachable; a machine off the network cannot be acquired until it is back on one you can reach.

5Ten situations, and exactly what to do

1 of 10

A fleet of several hundred machines

You do not want the first hour of an incident spent working out how to reach one.

What to choose

Push the agent ahead of time with the rest of the fleet software; pick the machine off the roster when needed.

Steps
  1. Build the MSI package with the console's address baked in
  2. Push it by Group Policy
  3. Pick the machine from remote roster when an incident happens
recoveryantra remote package --msi --server console.internal -o D:\Deploy
2 of 10

A machine on the same network, right now

No prior enrolment exists, but the target machine is reachable.

What to choose

remote discover, then image its idle disk directly.

Steps
  1. Run the agent on the target machine
  2. Discover it from the console
  3. Image the named disk
recoveryantra remote image --host 192.168.1.42 --key KEY --disk \\.\PhysicalDrive1 -o D:\Image.dd
3 of 10

A finance server cannot be stopped during month-end

The machine must keep running through the acquisition.

What to choose

remote live - freezes the volume in a snapshot taken on the endpoint, then images that snapshot while the server keeps working.

Steps
  1. Check remote volumes for live-capable status first
  2. Run remote live against the volume
  3. Verify the image is unchanged across the acquisition
recoveryantra remote live --host 192.168.1.42 --key KEY --volume C:\ -o D:\LiveImage.dd
4 of 10

A laptop reports in from home

It appears on the roster but is not reachable from the office network.

What to choose

Enrolled is not the same as reachable - roster shows it, but acquisition waits until it is back on a reachable network.

Steps
  1. Check remote roster
  2. Note it is enrolled but not currently reachable
  3. Wait, or queue the job for when it reconnects
recoveryantra remote roster
5 of 10

A job needs to wait for a machine that is not available now

The target is offline and the job cannot start today.

What to choose

remote queue --add - queued for the next time the endpoint is reachable.

Steps
  1. Add the job to the queue with the reason and case reference
  2. Run --run once the endpoint is back
  3. Check --list for status meanwhile
recoveryantra remote queue --add --host 192.168.1.42 --volume C:\ -o D:\Image.dd --reason "suspected leak" --case CASE-142
6 of 10

One file needs to be found across the whole fleet

A specific file or hash is suspected to exist on several machines.

What to choose

remote sweep - asks every enrolled endpoint one question at once, without imaging any of them.

Steps
  1. Run remote sweep with the filename or hash
  2. Review hits per endpoint
  3. Only then image the machines that matched
recoveryantra remote sweep --key KEY --sha256 HASH --max-hits 200
7 of 10

Deploying to a mixed Windows/Linux/macOS estate

The fleet is not all one operating system.

What to choose

remote package with --platform, building the right binary for each.

Steps
  1. Build the package once per platform, or --platform all
  2. Deploy each to its own machines
  3. Confirm each reports in on the roster
recoveryantra remote package --platform all -o D:\Deploy --server console.internal --msi
8 of 10

Confirming an agent never takes orders from the server

A security review is asking how the console cannot become one machine worth every workstation's disk.

What to choose

Enrolment is report-only, by construction - the agent only reports in and offers reads, it accepts no server-issued commands.

Steps
  1. Review the agent's own read-only design
  2. Confirm the server can only request, never push, an action
  3. Document the report-only architecture for the review
9 of 10

The machine was switched off mid-acquisition

The user shut down the laptop while an image was in progress.

What to choose

A persistent snapshot usually survives a restart; if it does not, resume is REFUSED rather than splicing two moments into one file.

Steps
  1. Restart the acquisition after the machine is back
  2. If the snapshot is gone, start fresh rather than resume
  3. Never accept a spliced image as a point-in-time copy
recoveryantra remote live --host 192.168.1.42 --key KEY --volume C:\ -o D:\LiveImage.dd
10 of 10

Acquisition over the internet

The machine is not on the same network as the console.

What to choose

This is the honest limit - acquisition over the internet needs a relay both sides connect out to, which is not built. State it plainly rather than attempting a workaround.

Steps
  1. Confirm the machine is not reachable on the local network
  2. State the limitation to the client
  3. Plan a site visit or a local agent push instead

6The same job at the command line

recoveryantra remote discover && recoveryantra remote image --host 192.168.1.42 --key KEY --disk \\.\PhysicalDrive1 -o D:\Image.dd
Feature 12 · Chip-off NAND reconstruction

Turn a lab's raw chip dump into a disk this tool can read

What a chip-off lab hands over is not a disk image yet - it is a raw dump, spare areas included. This works out the geometry, de-scrambles it, corrects with the controller's own error-correction scheme and rebuilds the block map into an image the ordinary recovery flow can open.

1How to get there

Home → Chip-off NAND.

HomeChip-off NAND
Chip-off NAND reconstruction - turning a lab's raw dump into a disk
  1. 1Path to the raw dump the raw dump from the lab, spare (OOB) areas included.
  2. 2Page size, if the lab knows the page size in bytes, if the lab measured it.
  3. 3Spare size, if the lab knows the spare (out-of-band) area size, if the lab measured it.
  4. 4Pages per block, if the lab knows pages per erase block, if known.
  5. 5Analyse reads and reports the geometry, writing nothing - always run this first.
app-nandrecon.webp - no chip-off dump on this bench; captured in its honest empty state

2Analyse, or rebuild with known figures?

Analyse first
Reads the dump and reports the geometry, scrambling, error correction and block map it can work out - writes nothing.
Choose this when always, before committing to an image. It costs nothing and tells you which figures still need supplying by hand.
Rebuild with known figures
Builds the image using page size, spare size and ECC parameters the lab already measured.
Choose this when the lab's datasheet or their own analysis gives you confirmed figures - supplying a wrong one produces an image that looks like a disk and carves to nothing.
Force a build
Writes an image even when the geometry could not be confirmed, taking the best guess.
Choose this when only after --analyse shows how uncertain the figures are, and only as a last resort - the run records that it was forced.

3The options, and what to set them to

OptionWhat it doesWhat to choose
--analyseReports geometry, scrambling, ECC scheme and the block map, writing nothing.Run first, every time, before committing to an image.
--page-size / --spare-size / --pages-per-blockGeometry figures, taken as fact instead of inferred when supplied.Only when the lab genuinely measured them - a wrong figure shifts every page and the result carves to nothing.
--xor-key / --xor-periodThe controller's XOR de-scramble keystream and its repeat period.Supply --xor-key when the lab has the file; a dump scrambled end to end cannot be de-scrambled by analysis alone without it.
--ecc-scheme / --ecc-step / --ecc-t / --ecc-offsetThe controller's error-correction scheme and parameters.Only when automatic detection could not settle it and the controller's datasheet gives the values - a wrong strength corrects nothing, or reads correction bytes as data.
--ftl-offset / --ftl-width / --ftl-endianWhere the logical block address sits in the spare area, and its width and byte order.When known, to put blocks back in the order a filesystem expects rather than the chip's own physical order.
--forceWrites an image even when the geometry is not confirmed.Only after --analyse, and only when there is no better option - a forced image can look sound while holding nonsense.

4Step by step

  1. Point at the raw dump
    The file the lab read straight off the bare NAND chip, spare areas included - not a disk image yet.
  2. Analyse first
    Reports the geometry it can work out and writes nothing - always run this before committing to anything.
  3. Supply what the lab knows
    Page size, spare size, ECC scheme and parameters, XOR key - each taken as fact rather than inferred when given.
  4. Choose where to save the image
    A different drive from the dump.
  5. Rebuild the image
    The reconstructed image is written whole, so the ordinary recovery flow can open it like any other disk image.
  6. Recover from the rebuilt image
    Continue with Recover a drive exactly as with any other image file.

Do not do this. A wrong page size, spare size or ECC parameter produces an image that looks like a real disk and holds nobody's files. Always run --analyse first, and supply figures only when the lab genuinely measured them.

5Ten situations, and exactly what to do

1 of 10

A phone's chip-off dump arrives from the lab

A lab desoldered the NAND chip and handed over the raw dump.

What to choose

--analyse first, always - writes nothing and reports what the dump's geometry looks like.

Steps
  1. Receive the raw dump with spare areas included
  2. Run --analyse
  3. Read the reported geometry, scrambling and ECC findings
recoveryantra nandrecon dump.bin --analyse
2 of 10

The lab supplies confirmed page and spare sizes

The lab's own datasheet gives exact figures for the chip.

What to choose

Supply --page-size and --spare-size so they are taken as fact rather than inferred.

Steps
  1. Analyse first
  2. Rebuild with the confirmed page and spare sizes
  3. Confirm the built image opens as a disk
recoveryantra nandrecon dump.bin -o D:\Rebuilt\image.dd --page-size 4096 --spare-size 224
3 of 10

The controller scrambles the whole dump

Analyse reports the dump is scrambled end to end.

What to choose

An XOR key file from the lab is what makes the dump readable at all - analysis alone cannot de-scramble it.

Steps
  1. Ask the lab for the XOR key file, if they have one
  2. Rebuild with --xor-key pointed at it
  3. Verify the rebuilt image's filesystem is recognisable
recoveryantra nandrecon dump.bin -o D:\Rebuilt\image.dd --xor-key keyfile.bin
4 of 10

Automatic ECC detection could not settle it

Analyse reports the error-correction scheme is uncertain.

What to choose

Supply --ecc-scheme, --ecc-step and --ecc-t from the controller's own datasheet.

Steps
  1. Get the controller's ECC parameters from its datasheet
  2. Rebuild with the stated ECC scheme and parameters
  3. Confirm the correction actually reduces errors on re-analysis
recoveryantra nandrecon dump.bin -o D:\Rebuilt\image.dd --ecc-scheme bch --ecc-step 512 --ecc-t 8
5 of 10

The block address field's position is known

The lab's controller documentation gives the FTL field's offset and width.

What to choose

Supply --ftl-offset, --ftl-width and --ftl-endian so blocks are put back in logical order.

Steps
  1. Confirm the FTL field position from documentation
  2. Rebuild with the FTL parameters supplied
  3. Compare against a physical-order rebuild if in doubt
recoveryantra nandrecon dump.bin -o D:\Rebuilt\image.dd --ftl-offset 2 --ftl-width 2 --ftl-endian little
6 of 10

Nothing about the chip is known beyond the dump itself

The lab supplied only the raw bytes, no datasheet.

What to choose

Analyse first and rebuild with only what it inferred - the result still needs verifying against the recovery it produces.

Steps
  1. Analyse with no figures supplied
  2. Rebuild using inferred geometry only
  3. Recover from the result and check whether files come back sensibly
recoveryantra nandrecon dump.bin -o D:\Rebuilt\image.dd
7 of 10

The geometry could not be confirmed at all

Analyse reports low confidence in every figure.

What to choose

--force only as a last resort, and only after reading exactly how uncertain the figures are - the run records that it was forced.

Steps
  1. Read the --analyse confidence carefully
  2. Use --force only when there is no better option
  3. State the forced status when handing anything back
recoveryantra nandrecon dump.bin -o D:\Rebuilt\image.dd --force
8 of 10

The pages-per-block figure is unknown

The lab could not supply the erase-block size.

What to choose

The image can still build without it, in the chip's own physical order rather than logical order.

Steps
  1. Rebuild without --pages-per-block
  2. Accept the physical-order layout
  3. Supply the figure later if the lab provides it, and rebuild again
recoveryantra nandrecon dump.bin -o D:\Rebuilt\image.dd --page-size 4096 --spare-size 224
9 of 10

Comparing two rebuilds with different assumptions

It is unclear which of two possible page sizes is correct.

What to choose

Rebuild once with each candidate and compare which one produces a filesystem that actually recovers files.

Steps
  1. Rebuild with the first candidate page size
  2. Rebuild with the second, to a different output path
  3. Recover from each and compare which produces sensible files
recoveryantra nandrecon dump.bin -o D:\Rebuilt\a.dd --page-size 2048 --spare-size 64
10 of 10

The rebuilt image goes into the ordinary recovery flow

Once the image is built, the rest of the job is an ordinary recovery.

What to choose

Open the rebuilt image with Recover a drive exactly as with any other image file.

Steps
  1. Rebuild the image
  2. Open Recover a drive against the rebuilt image
  3. Recover files with Smart mode as usual
recoveryantra recover --image D:\Rebuilt\image.dd -o D:\Recovered --mode smart

6The same job at the command line

recoveryantra nandrecon dump.bin --analyse
Feature 13 · Repair a recovered video

Make a recovered video play, by fixing its index

A video's index says where every frame is. When it is damaged or was lost with the recording, the picture is all there and unreadable anyway. This rebuilds the index - and says plainly when frames really are missing rather than claiming a repair.

1How to get there

Home → Repair videos. No source drive is needed - this works on already-recovered files.

HomeRepair videosChoose the videos → A working sample → Repairing → Done
Repair a recovered video - the “Repair recovered videos” dialog
  1. 1No folder chosen yet the folder of recovered videos to repair - no source drive needed.
  2. 2Choose folder… browse to the folder holding the recovered videos.
  3. 3Repair videos runs the repair over every video in the chosen folder, working on copies.
app-repairvid.webp - a real capture, reached from another workspace's follow-on action

2A whole folder, or one file against a reference?

Repair a whole folder
fixvideos runs over an already-completed recovery folder, rebuilding the index in the recovered COPY for every video that is listed but will not play.
Choose this when a recovery finished and several videos show as recovered but a player will not open them.
Repair against a reference
fixwith uses a healthy file from the SAME camera or phone to donate structure - never picture data - to one damaged file.
Choose this when one specific file recovered without its index or tables, and a known-good file from the identical device is available.

3The options, and what to set them to

OptionWhat it doesWhat to choose
fixvideos <folder>Repairs every video in a recovered folder in place, on a copy.Whenever a completed recovery lists videos as recovered but they will not play - the common case is a container index sized wrong or lost.
fixwith --file / --referenceRepairs one damaged clip using a healthy file from the same device as a structural reference.One specific file with no usable index of its own, and a genuinely matching healthy file exists. A reference from a different device produces a file that opens and is wrong.
fixwith -oWhere the repaired copy is written.The case store, when the original recovered copy has to be preserved exactly as recovered.

4Step by step

  1. Finish the recovery first
    Repair works on already-recovered files - it needs no source drive or image.
  2. Choose the folder
    The recovery's own output folder, full of videos listed as recovered.
  3. Analyse
    Checks each video's container index and video track before attempting anything.
  4. Repair
    The index is rebuilt in a COPY - the recovered original is never modified.
  5. Check it plays
    Where frames really are missing because the source was overwritten, the tool says so instead of claiming a repair.

Do not do this. Never re-encode a damaged recovered video with a converter to “fix” it. That bakes the fault in and loses quality permanently. Repair always works on a copy and rebuilds the index, which is lossless.

5Ten situations, and exactly what to do

1 of 10

A card of phone videos comes back 90% unplayable

A container header disagrees with the video's own index in every case.

What to choose

fixvideos over the whole recovered folder - sizes from the index, rewrites the header so every player reads it.

Steps
  1. Finish the recovery
  2. Run fixvideos over the output folder
  3. Confirm the repaired copies play
recoveryantra fixvideos D:\Recovered\Videos
2 of 10

One clip plays sound with no picture

The container's index survived but points into the wrong data.

What to choose

This is the fragmented-recovery pattern - fixvideos rebuilds the index from the actual sample table, not the possibly-wrong mdat header.

Steps
  1. Run fixvideos over the folder holding the clip
  2. Confirm the picture now plays with the sound
  3. Note any clip still silent-only as a genuine gap
recoveryantra fixvideos D:\Recovered\Videos
3 of 10

A single damaged file has no index at all

One specific MP4 recovered with a completely lost sample table.

What to choose

fixwith, with a healthy file from the SAME camera as the structural reference.

Steps
  1. Find a healthy file from the identical camera or phone
  2. Run fixwith with --file and --reference
  3. Write the repaired copy to the case store
recoveryantra fixwith --file broken.mp4 --reference good_sample.mp4 -o D:\Repaired
4 of 10

The original must be preserved exactly as recovered

The repaired file cannot overwrite what was already handed over as evidence.

What to choose

fixwith always writes a separate copy - the source recovered file is never modified.

Steps
  1. Confirm the original recovered file is untouched
  2. Repair to a new output path with -o
  3. Keep both the original and the repaired copy on record
recoveryantra fixwith --file broken.mp4 --reference good_sample.mp4 -o D:\Case\repaired.mp4
5 of 10

A 939 MB clip that should be 296 MB

The mdat header disagrees badly with the actual sample table.

What to choose

fixvideos sizes correctly from the index and rewrites the header - the file becomes the size the actual video really is.

Steps
  1. Run fixvideos over the folder
  2. Confirm the repaired file's size matches its true video length
  3. Play it back to confirm
recoveryantra fixvideos D:\Recovered\Videos
6 of 10

A reference file from a different device is the only one available

No matching camera sample exists, only a similar-looking clip from another device.

What to choose

Do NOT use it. A reference from a different device produces a file that opens and is wrong - picture data is never taken from the reference, but the structural assumptions can still mismatch.

Steps
  1. Do NOT use a reference from a different device
  2. Find a genuine sample from the same camera instead
  3. State the limit if none exists
7 of 10

Media was genuinely overwritten on the source

The video was fragmented and part of it landed in space that was reused.

What to choose

The honest limit - repair cannot restore picture data that was overwritten on the source. The result stays partly lost, and the tool says so.

Steps
  1. Run fixvideos
  2. Read the reported result honestly
  3. Do NOT claim a full repair when frames are genuinely missing
recoveryantra fixvideos D:\Recovered\Videos
8 of 10

Re-encoding was suggested as a fix

A converter tool was offered as a way to “fix” the unplayable video.

What to choose

Do NOT re-encode. That bakes the fault in and loses quality permanently - repair the index instead, which is lossless.

Steps
  1. Do NOT re-encode the damaged file
  2. Run fixvideos or fixwith instead
  3. Keep the repair lossless
9 of 10

A whole recovery's worth of mixed video needs checking

Several dozen recovered clips, some fine and some not.

What to choose

fixvideos runs over the whole folder in one pass and only touches the ones that need it.

Steps
  1. Run fixvideos over the whole output folder
  2. Review which clips changed
  3. Spot-check a sample that plays
recoveryantra fixvideos D:\Recovered\Videos
10 of 10

Confirming a repair before handing footage over

A repaired clip needs proving before it goes to a client.

What to choose

Play the repaired copy directly, and compare its reported length against what the original recording should be.

Steps
  1. Repair with fixvideos or fixwith
  2. Play the repaired copy
  3. Compare the length against the expected recording
recoveryantra fixvideos D:\Recovered\Videos

6The same job at the command line

recoveryantra fixvideos D:\Recovered\Videos
Feature 14 · Certified erase

Erase a drive, and prove it was erased

Overwrites every block, then runs this product's own recovery engine over the result and issues a certificate stating the level actually achieved (NIST SP 800-88) - never more than was proven, and never claiming a level the drive could not confirm.

1How to get there

Home → Erase a drive.

HomeErase a driveWhich drive → Confirm → Erasing and verifying → Certificate
Erase a drive - which drive, with refusals stated in words
  1. 1Refresh re-reads attached drives.
  2. 2NIST SP 800-88 Clear the sanitisation level this default pass achieves, stated before a drive is even chosen.
  3. 3Why zeroes, and what Clear means explains why zeroes are used and what the NIST SP 800-88 Clear level means.
app-wipe.webp - a real capture of the workspace

2A whole drive, or a working folder?

erase (whole device)
Overwrites an entire physical drive and issues a certificate of erasure (NIST SP 800-88), then runs this product's own recovery engine over the result to prove nothing came back.
Choose this when the drive is leaving the organisation - being sold, returned to a lessor, or retired - and a record of the sanitisation has to be kept.
wipe (a working folder)
Overwrites and removes a folder of recovered files at the end of a job.
Choose this when a client's recovered data has finished its job on the bench and should not sit there indefinitely. It carries the same honest limits about flash and copy-on-write filesystems.
erase --firmware
Also issues the drive's own firmware sanitize (ATA/NVMe Sanitize, or crypto-erase), reaching NIST Purge on drives that support it.
Choose this when the drive's spare and remapped blocks need reaching too - an overwrite alone cannot address them, which matters most on flash.

3The options, and what to set them to

OptionWhat it doesWhat to choose
<target>The drive being erased.The system disk, the drive the product runs from, and the drive holding the report are all refused outright - there is no override for those three.
--confirmThe drive's own serial number (or its size in bytes if it reports none).Type it every time. This is the one step that prevents erasing the wrong disk, and there is no override for it.
--passes / --patternOverwrite passes (default 1) and the fill pattern (default zero).Leave both at default. NIST SP 800-88 Rev. 1 is explicit that one pass is enough on modern media, and a zeroed drive can be PROVEN clean by reading it back - random fill cannot be told from data that was already encrypted.
--firmware / --purge-methodThe drive's own controller sanitise, for NIST Purge; optionally forcing a specific method.Add --firmware to reach spare and remapped blocks an overwrite cannot address. The certificate records the level actually ACHIEVED, not the level requested.
--no-verifySkips reading the drive back and trying to recover from it.Only for a bulk pass over drives that will be physically destroyed afterwards anyway. Skipping verification removes the whole basis for the certificate's central claim - never issue an unverified certificate as though it were verified.
--examiner / --outThe name recorded on the certificate, and the folder it and the audit trail are written to.The person accountable for the disposal, as your policy defines it; the folder on the records store, never on the drive being erased.

4Step by step

  1. Choose the drive
    The system disk, the drive the product runs from, and the drive holding the report can never be chosen - refused with no override.
  2. Type the serial number to confirm
    This is what prevents erasing the wrong disk. There is no way around it.
  3. Choose how thorough
    One pass, zero pattern, is the default and is enough under NIST SP 800-88 Rev. 1. Add --firmware for drives with spare or remapped blocks an overwrite cannot reach.
  4. Erase and verify
    The overwrite runs, then this product's own recovery engine is run over the erased drive to prove nothing came back.
  5. Receive the certificate
    States the level actually ACHIEVED - Clear, or Purge where the firmware confirmed it - and the honest limits, never the word “unrecoverable”.

Do not do this. There is no override for the serial-number confirmation, and none for the system disk, the drive the product runs from, or the drive holding the report. Rely on a quick format or deleting partitions and the data is still there - only an overwrite, verified, actually removes it.

5Ten situations, and exactly what to do

1 of 10

40 laptops going back at the end of a lease

Every machine needs a record proving it was sanitised.

What to choose

erase, default one pass zero pattern, verified - a certificate naming each drive's own serial number.

Steps
  1. Confirm each drive's serial number by typing it
  2. Erase with the defaults
  3. Keep each certificate with the asset record
recoveryantra erase \\.\PhysicalDrive2 --confirm SERIALNUMBER --out D:\Certs --examiner "J. Rao"
2 of 10

A drive is going to a third party

The organisation is selling hardware it no longer needs.

What to choose

Same command - the default level (NIST Clear) is stated plainly on the certificate.

Steps
  1. Type the serial number to confirm
  2. Run erase with defaults
  3. Hand the certificate over with the drive
recoveryantra erase \\.\PhysicalDrive3 --confirm SERIALNUMBER --out D:\Certs
3 of 10

An SSD holding something genuinely sensitive

Spare and remapped flash blocks need reaching too, not just the visible sectors.

What to choose

--firmware - the drive's own controller sanitises areas an overwrite cannot address.

Steps
  1. Run erase with --firmware
  2. Confirm the certificate states the level actually achieved
  3. Physically destroy the drive as well if policy requires it
recoveryantra erase \\.\PhysicalDrive4 --confirm SERIALNUMBER --firmware --out D:\Certs
4 of 10

Policy names a specific firmware method

An internal standard requires crypto-erase specifically, not whatever the drive prefers.

What to choose

--purge-method forces the named method.

Steps
  1. Confirm the drive supports the named method
  2. Run erase --firmware --purge-method crypto
  3. Read the certificate for the level actually achieved
recoveryantra erase \\.\PhysicalDrive4 --confirm SERIALNUMBER --firmware --purge-method crypto --out D:\Certs
5 of 10

A large batch going for physical destruction anyway

Hundreds of drives are being shredded after the pass.

What to choose

--no-verify only here - the destruction is the final sanitisation step, so the verification time is not required.

Steps
  1. Confirm physical destruction is genuinely scheduled next
  2. Run erase --no-verify for speed
  3. Never issue this as a verified certificate to a client
recoveryantra erase \\.\PhysicalDrive5 --confirm SERIALNUMBER --no-verify --out D:\Certs
6 of 10

A working folder of recovered files at the end of a job

The client's recovered data has served its purpose on the bench.

What to choose

wipe, not erase - a folder, not a whole device.

Steps
  1. Confirm the case is genuinely closed
  2. Run wipe against the folder
  3. Note the flash/backup limits stated with the result
recoveryantra wipe D:\Bench\CaseFiles
7 of 10

Someone suggests three overwrite passes for extra safety

An old habit asks for a DoD-style multi-pass wipe.

What to choose

Leave --passes at 1. NIST SP 800-88 Rev. 1 is explicit that a single pass is sufficient on modern media; more passes add time and no measurable security.

Steps
  1. Explain the current NIST guidance
  2. Leave --passes at the default
  3. Raise it only if a contract specifically demands a number
recoveryantra erase \\.\PhysicalDrive2 --confirm SERIALNUMBER --out D:\Certs
8 of 10

Random fill was suggested instead of zero

Someone believes random data is harder to recover than zeroes.

What to choose

Leave --pattern at zero. A zeroed drive can be PROVEN clean by reading it back; random fill cannot be distinguished from data that was already encrypted, and it weakens the verification, not strengthens it.

Steps
  1. Explain why zero is the stronger, provable choice
  2. Leave --pattern at zero
  3. Let verification run to prove the result
recoveryantra erase \\.\PhysicalDrive2 --confirm SERIALNUMBER --out D:\Certs
9 of 10

Someone tries to erase the machine's own system drive

A mistake in drive selection targets the disk the product is running from.

What to choose

Refused outright, with no override. The system drive, the drive the product runs from, and the drive holding the report can never be chosen.

Steps
  1. Attempt to select the system drive
  2. Read the refusal
  3. Choose the correct target drive instead
10 of 10

A truly sensitive SSD, beyond what software can reach

The data must be genuinely irrecoverable, not just professionally sanitised.

What to choose

State the honest limit - overwriting cannot reach a flash drive's spare pages. For something this sensitive, physical destruction is the only complete answer, and the certificate says so.

Steps
  1. Run erase --firmware for the best software result
  2. State the honest limit on spare pages plainly
  3. Recommend physical destruction alongside the certificate
recoveryantra erase \\.\PhysicalDrive6 --confirm SERIALNUMBER --firmware --out D:\Certs

6The same job at the command line

recoveryantra erase \\.\PhysicalDrive2 --confirm SERIALNUMBER --out D:\Certs --examiner "J. Rao"