0X8003001E

STG_E_READFAULT (0x8003001E) - Disk Read Error Fix

Hardware – Hard Drives Intermediate 👁 10 views 📅 May 27, 2026

STG_E_READFAULT means Windows hit a bad sector or controller glitch during a read. Here's how to fix it in 30 seconds or 15 minutes.

The 30-Second Fix: Run chkdsk /f on the Affected Drive

This error almost always comes from a bad sector on the drive or a corrupted file system. The quickest way to confirm and patch it is with chkdsk. Open Command Prompt as Administrator — hit Start, type cmd, right-click, pick Run as administrator. Then run:

chkdsk C: /f /r

Replace C: with whatever drive letter gave you the error (could be D:, E:, etc.). The /f flag tells Windows to fix errors; /r locates bad sectors and tries to recover readable data.

If it’s your system drive (C:), it’ll ask to schedule the scan for next reboot. Type Y and restart. This takes a while — go grab coffee. Once it finishes, try the operation that originally failed. Nine times out of ten, this clears it.

The 5-Minute Check: Verify S.M.A.R.T. Health and Unplug Peripherals

If chkdsk ran without issues but the error still pops up, the problem might not be the drive itself. I’ve seen this happen with a dying external USB cable or a flaky SATA connection. First, check the drive’s S.M.A.R.T. data. Use wmic in Command Prompt:

wmic diskdrive get status

If you see Pred Fail, the drive is toast — replace it now. Don’t try to recover data yourself; take it to a pro if it’s critical. If status is OK, move on.

Shut down the machine. Unplug all USB drives, SD cards, external enclosures — anything with storage. Boot back up and reproduce the error. I’ve had cases where a USB hub with a dying drive in it was throwing this error on a completely different internal drive. The error code is generic; Windows sometimes blames the wrong disk.

The 15+ Minute Fix: Deep Scan and Hardware Swap

Still seeing STG_E_READFAULT? Let’s get surgical. Open Event Viewer (Eventvwr.msc) and go to Windows Logs > System. Filter for Event ID 7 or 50 — those are disk error markers. Note the device path. That tells you exactly which disk is failing.

Next, run a surface scan with chkdsk C: /f /r /x (the /x dismounts the volume first). If that fails to complete or hangs, you’ve got physical bad sectors. Grab a tool like HD Tune or CrystalDiskInfo — they give you a raw reallocated sector count. If that number is above 0, the drive is failing. Replace it.

If the Drive is External (USB or eSATA)

Try a different cable — USB cables wear out and cause flaky reads. Swap the port too. If the drive is in a dock, reseat it. If the error persists, plug the drive directly into a SATA port inside your PC. I’ve seen cheap USB bridges throw this error constantly on healthy drives.

Still Stuck?

If none of that works, and the drive is internal and primary, backup everything you can immediately. Then run a full manufacturer diagnostic — Seagate has Seatools, WD has Data Lifeguard, Samsung has Magician. Boot from the diagnostic ISO if needed. If the drive passes, you’re looking at a motherboard SATA controller issue. Tried swapping the SATA port and cable? That’s free and quick.

One last thing: if this error is hitting a network share or a mapped drive, the culprit is almost always a network glitch or a dying NAS drive. Re-map the share, check the NAS logs, and run chkdsk on the server’s drive. Don’t bother tweaking SMB settings — it rarely helps.

Bottom line: STG_E_READFAULT means something down the storage chain can’t read data. Start with chkdsk, check S.M.A.R.T., swap cables, then replace hardware. You’ll fix it in one of those steps.

Was this solution helpful?