How to Use the tmutil Command in macOS Terminal to Manage Time Machine Backups

The macOS Time Machine graphical user interface provides simple backup automation, but power users, system administrators, and developers often require granular control over backup processes, snapshot retention, and volume exclusions. The built-in tmutil (Time Machine Utility) command-line interface provides comprehensive programmatic management over the entire Time Machine framework directly through macOS Terminal or remote SSH sessions.

Checking Time Machine Status and Storage Destinations

Before modifying backup behaviors or manipulating local snapshots, inspect the current operational state and active destination drives:

tmutil status
tmutil destinationinfo

The tmutil status command outputs detailed JSON-like information regarding whether a backup is currently running, the total bytes processed, estimated completion percentage, and active process phases. The destinationinfo subcommand displays all configured backup targets, their unique IDs, and mount paths.

Command Primary Function Elevation Required
tmutil startbackup Initiates an ad-hoc incremental backup job. No (Optional --auto)
tmutil stopbackup Cancels a running backup session gracefully. No
tmutil localsnapshot Generates an immediate APFS local snapshot on the boot drive. No
tmutil listlocalsnapshots / Lists all active APFS snapshots stored on the root container. No
tmutil deletelocalsnapshots <date> Removes a specific snapshot to reclaim internal disk storage. Yes (sudo)

Starting and Controlling Backups from Terminal

To trigger an on-demand Time Machine backup without opening System Settings, run:

tmutil startbackup

By default, this runs as an interactive background process. If you want the command to block until the backup is completely finished (ideal for automated deployment scripts or maintenance crons), append the --block flag:

tmutil startbackup --block

To abort an active backup that is saturating network bandwidth or consuming excessive CPU resources, issue:

tmutil stopbackup

Managing APFS Local Snapshots

On Mac systems formatted with Apple File System (APFS), Time Machine automatically generates local snapshots on the internal drive when the external backup disk is disconnected. While these provide instant rollbacks, they can consume gigabytes of internal storage. You can view, create, and purge snapshots manually:

# Create an immediate manual snapshot
tmutil localsnapshot

# List existing snapshots on the startup volume
tmutil listlocalsnapshots /

Output displays snapshots labeled with timestamps such as com.apple.TimeMachine.2026-10-21-143000.local. To delete a specific snapshot and immediately free up internal purgeable space:

sudo tmutil deletelocalsnapshots 2026-10-21-143000

To reclaim a bulk amount of purgeable disk space across all local snapshots without identifying individual dates, use the thin subcommand specifying the byte amount and urgency level (1 to 4):

sudo tmutil thinlocalsnapshots / 20000000000 4

Configuring Exclusions and Comparing Backups

To prevent massive virtual machine images, Docker data, or development build directories (such as node_modules) from consuming backup bandwidth, manage file exclusions using addexclusion:

# Add fixed path exclusion
sudo tmutil addexclusion /Users/username/Projects/LargeDataset

# Check existing exclusions
tmutil isexcluded /Users/username/Projects/LargeDataset

To see exactly what changed between two existing backup points or between the current live filesystem and the latest snapshot, execute the compare subcommand:

tmutil compare

This audits added, deleted, and modified files across filesystem boundaries, providing transparent visibility into where your storage capacity is allocated.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.