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.