How to check hard drive or SSD health on Windows, Mac and Linux (free, built-in and smartctl)
Your drive has been keeping its own health log all along. Here's how to open it on each system and what to look for, in about five minutes.
Windows
- Quick look (Windows 11, SSDs): Settings, System, Storage, Advanced storage settings, Disks & volumes, choose the disk, Properties. Drive health shows estimated remaining life, available spare and temperature, and warns if Windows sees a problem. Hard drives usually show nothing here.
- PowerShell (any drive, no install): open PowerShell as administrator and run
Get-PhysicalDisk | Get-StorageReliabilityCounter | Format-List
Look atReadErrorsUncorrected,Wear,TemperatureandPowerOnHours. Many drives leave some fields blank.Get-PhysicalDiskon its own shows a HealthStatus of Healthy, Warning or Unhealthy. - CrystalDiskInfo (free, most detail): shows Good, Caution or Bad with every attribute. Edit, Copy (Ctrl+C) copies the full report as text you can paste into the SMART report explainer. Caution usually means reallocated or pending sectors.
wmic diskdrive get statusis the old command. It only says OK or Pred Fail, it's being removed from Windows, and it says OK for most failing drives.
Mac
- Disk Utility: select the physical drive (View, Show All Devices) and look for S.M.A.R.T. status: Verified or Failing. Verified is the same late-flipping headline, and Disk Utility can't show the readings behind it. External USB drives usually show "Not Supported".
- System Information: Apple menu, About This Mac, More Info, System Report, NVMExpress or SATA: the same single S.M.A.R.T. line.
- smartctl (full detail): install Homebrew, then
brew install smartmontools, find the disk withdiskutil listand runsmartctl -a disk0. Apple's built-in SSDs report the NVMe health page: Percentage Used, Available Spare, Media and Data Integrity Errors.
Linux
sudo apt install smartmontools(or your distro's equivalent), thensudo smartctl -a /dev/sdafor SATA orsudo smartctl -a /dev/nvme0for NVMe.lsblklists the drives.- GNOME Disks: pick the drive, the three-dot menu, SMART Data & Self-Tests. It shows each attribute with an "OK" or warning.
- Run a self-test:
sudo smartctl -t long /dev/sda, wait the time it prints (hours on big hard drives), thensudo smartctl -l selftest /dev/sda. A self-test that stops with a read failure is a strong "back up now".
USB and external drives
The USB adapter sits between the computer and the drive, and many adapters hide SMART. If smartctl says Unknown USB bridge or please specify device type, add -d sat: sudo smartctl -a -d sat /dev/sdb. On Windows, CrystalDiskInfo tries the common adapters automatically. Cheap USB sticks and SD cards don't keep a health log at all.
What to look at first
| Drive | Reading | Worry when |
|---|---|---|
| Hard drive | Current pending sectors (197), offline uncorrectable (198), reported uncorrect (187) | Anything above 0: back up today |
| Hard drive | Reallocated sectors (5) | It keeps going up between checks, or is in the hundreds |
| Any | UDMA / interface CRC errors (199) | It grows: swap the cable or USB enclosure (the drive is usually fine) |
| NVMe SSD | Percentage Used, Available Spare, Media and Data Integrity Errors | Spare well below 100%, any media errors, or used past 100% |
| Any | Temperature | Hard drive over about 55 °C, SSD over about 70 °C |
More on each number: reallocated, pending and uncorrectable sectors and SSD health percentage. The Wirebook drive check-up lesson lets you change the readings on a cartoon drive and watch the verdict change.
Related
PC making a noise? · Move to an SSD by cloning · Drive clicking or beeping · Wipe a drive before giving it away
Questions
What is the best free tool to check hard drive health?
On Windows, CrystalDiskInfo. On Mac and Linux, smartctl from the free smartmontools package. All three read the drive's own SMART log; none of them can test every sector unless you run a long self-test.
My drive says Good or PASSED. Is it fine?
Not necessarily. The overall status only changes when a reading crosses the maker's failure limit, which is often very late. Check reallocated, pending and uncorrectable sectors (hard drives) or spare and media errors (SSDs).
Can I check the health of an external USB drive?
Usually. Use CrystalDiskInfo on Windows, or smartctl with -d sat on Mac and Linux. Some USB adapters block SMART completely, and USB sticks and SD cards have no health log.
How often should I check?
Every few months is plenty for a healthy drive. If a number like reallocated sectors is above zero, check again in a few weeks to see if it's growing.
Published 路 updated .