Mac slow after an update: diagnose and fix it from the Terminal

A symptom-first walkthrough for a Mac that became sluggish after a macOS update: check disks, repair the filesystem, audit background agents, rebuild Spotlight, and confirm updates.

macOSlaunchctlfilesystemTerminaldiskrepairdiskutilMedium risk
Rebuild the Spotlight index — it's the most common cause of post-update slowness.

What this covers

If your Mac turned sluggish right after a macOS update, the usual suspects are a corrupted Spotlight index, filesystem errors left by the update, or background agents stuck in a bad state. Work through these steps in order: diagnose first, then fix, then verify.

Symptom

?The Mac was fine before the update and now apps launch slowly, Finder stutters, Spotlight is unhelpful, and fans spin up without heavy use.

Identify your disks and volumes

After an update, slowness is often a storage problem: a nearly full or misbehaving volume. Start by listing every connected disk, its partitions, and its mount name so you know exactly which identifier (like /dev/disk3s1) your system volume lives on. You'll use that identifier in the next steps. You can tell it worked when you see a clean list including your startup volume.

See every internal and external disk, its partitions, and its /Volumes name from the terminal with one command.

Command
$ diskutil list

Check the filesystem for errors

An interrupted or botched update can leave filesystem errors that make everything feel sluggish. Run a verify on the volume you identified in the previous step. This is read-only and safe. If the verify reports errors, run the repair command shown alongside this guide, then verify again until it comes back clean.

Run Disk Utility's First Aid from the Terminal — check a volume's filesystem and fix errors without the GUI.

Command
$ diskutil verifyVolume /dev/disk3s1
▾ Undo
Undo
$ sudo diskutil repairVolume /dev/disk3s1

Audit what's running in your session

Updates sometimes leave user agents hung or crash-looping in the background, eating CPU. List your running launchd agents and look for entries with a PID of 0 or a nonzero last exit status — those are the ones misbehaving. If you spot a culprit, note its label; you can restart the whole session by logging out and back in rather than hunting further.

macOSList Running launchd User Agents on macOSMedium riskStep 3Optional

Use plain `launchctl list` to audit agents running in your user session with their PIDs and last exit statuses.

Command
$ launchctl list | head -30

Rebuild the Spotlight index

The most common cause of post-update slowness: macOS re-indexing your drive in the background, or an index corrupted mid-update. Erase the Spotlight database so it rebuilds from scratch. Expect high CPU and mds_stores activity for a while — that's normal. It worked once indexing settles down and Spotlight searches return correct results again.

Erase the broken Spotlight database so macOS re-indexes your drive from scratch.

Command
$ sudo mdutil -E /

Make sure no follow-up updates are pending

Slowness right after an update is sometimes fixed by a quick follow-up patch Apple shipped afterward. Use softwareupdate to list available updates and install any that apply to your system. When it reports no outstanding updates, you know the system is fully patched and the remaining fixes above have a clean baseline to work from.

Use the built-in softwareupdate CLI to list, download, and install Apple software updates without System Settings.

Command
$ softwareupdate -l -i -a --list-full-installer-versions
!The Spotlight rebuild temporarily increases CPU and disk activity for minutes to hours depending on your data. Repairing a volume writes to the filesystem — back up important data with Time Machine before running repairs.

How to confirm it worked

After rebuilding Spotlight and installing any pending updates, day-to-day use should feel responsive again: apps open promptly, and activity settles down after indexing completes.

Undo everything

Every command above can be reverted. Run these in order to undo all of it.

Undo everything
$ sudo diskutil repairVolume /dev/disk3s1

Review before running — some steps may not be independent.

Sources

  • DISKUTIL(8) - macOS manual page
    Apple (Xcode man pages mirror) · vendor-doc · 2026-09-17
    Evidence: The manual page text contains 'diskutil list' describing it as listing disks with their partitions and identifiers such as disk0s1.
  • diskutil - Modify, verify and repair local disks
    SS64 · technical · 2026-09-17
    Evidence: Documents the diskutil command with 'list' as its first documented verb for listing disks, including the 'diskutil list' syntax shown on the page.
  • System Information User Guide for Mac - Apple Support
    Apple Support · vendor-doc · 2026-09-17
    Evidence: Apple's reference for inspecting disks and volumes on macOS, including First Aid-style diagnostics.
  • launchctl - Interfaces with launchd to manage services
    SS64 · technical · 2026-09-17
    Evidence: Documents `launchctl list`: 'List all of the jobs loaded in their own domain' with PID, status and label columns; run without sudo it lists your user domain.
  • launchctl(1) man page
    Xcode Man Pages (keith.github.io) · technical · 2026-09-17
    Evidence: Man page for launchctl: the `list` subcommand prints the label, PID (or '-' if not running) and last exit status of each service in the caller's domain.
  • SoftwareUpdate Command: How to update software in macOS
    SS64 · technical · 2026-09-17
    Evidence: Documents softwareupdate -l to list, -i -a to install all available updates, and related flags.
  • Update macOS on Mac - Apple Support
    Apple Support · vendor-doc · 2026-09-17
    Evidence: Apple's guide to updating macOS; the Software Update mechanism behind the CLI is documented here.
  • macOS mdutil command reference
    SS64 · technical · 2026-09-16
    Evidence: mdutil -E erases and rebuilds the Spotlight index store for the specified volume or directory.

Last verified: 2026-09-21

Related guides