dust
A command-line disk usage viewer that ranks directory trees and shows where storage is being consumed.
Why consider dust?
Dust is an open-source terminal disk usage analyzer written in Rust that provides an intuitive graphical breakdown of directory sizes. It presents hierarchical storage usage without requiring piped sorting commands.
Learn dust by building
Practical setup notes, real use cases, and copy-ready examples in one focused guide.
In this guide4 sections
Navigating Disk Space with Dust
Traditional command-line systems rely on the du tool to report storage consumption, but raw outputs frequently overwhelm terminal screens with unformatted line items. Dust solves this administrative challenge by combining terminal-friendly visualization with high-performance directory traversal. Dust is a more intuitive disk usage analyzer implemented in Rust as a modern alternative to the standard du utility. Instead of requiring complicated pipelines, the tool instantly calculates hierarchical storage weights and displays them using responsive terminal graphics.
System administrators often find themselves piping disk analysis output through multiple text manipulation tools just to isolate storage bottlenecks. The tool provides an immediate visual overview of directory space consumption without requiring users to pipe output into sort or head commands. By prioritizing significant directories automatically, Dust Documentation highlights critical consumption points immediately upon execution.
How Dust Analyzes and Displays Storage Hierarchies
Standard disk inspection tools treat every directory entry equally, generating excessive scrolling across nested file systems. Dust automatically lists the largest subdirectories and files sized to fit terminal height while intelligently recursing down the directory hierarchy. According to the Dust Project README, this automatic terminal budgeting ensures that operators see the top space consumers on screen without manual depth filtering.
To make complex trees easy to read at a glance, the utility pairs proportional size bars with tree lines. The visual bars communicate disk usage and structural hierarchy where distinct shades of grey identify parent and child folder relationships. As detailed in the Official Repository, this visual hierarchy helps operators immediately distinguish isolated large files from directories containing numerous cumulative assets.
Large development repositories and build directories often accumulate thousands of negligible artifacts that obscure meaningful storage patterns. Dust keeps command output concise and focused on high-impact items by filtering out clutter and highlighting the largest entries across deep trees. Information on the Dust Repository notes that this design choice eliminates noise while accurately surfacing heavy dependencies and temporary caches.
Accurate capacity planning requires precise accounting for linked files and deduplicated storage blocks. When calculating storage consumption across complex directory structures, Dust avoids counting hard links multiple times unless explicit apparent size flags are specified. The Dust Repository Overview highlights that this default behavior reflects actual underlying disk block usage rather than inflated theoretical maximums.
Installing and Running Dust
Getting started with Dust requires minimal environmental configuration across standard workstation environments. The official automated installation script enables rapid deployment across Linux, macOS, and Windows operating systems. Operators can review the verified installation script directly on the Official README and execute the recommended command:
curl -sSfL https://raw.githubusercontent.com/bootandy/dust/refs/heads/master/install.sh | shUsers can also install Dust through diverse distribution packaging channels such as Cargo, Homebrew, DNF, Snap, and Scoop. The software is actively maintained with official binaries packaged and distributed through release version v1.2.5. Details regarding packaged distributions and platform artifacts are accessible via Dust Release v1.2.5.
Customizing Output with Configuration Files
Rather than repeatedly entering CLI parameters on every invocation, operators can define default display preferences. Configuration parameters can be persistently stored in standard TOML files located at either the XDG config directory or the user home directory. As documented in the Dust Source Repository, keys correspond directly to kebab-case command line flags for predictable formatting.
The following official example demonstrates basic formatting directives available in the project template file at Dust Config Template:
# Print tree upside down (biggest highest)reverse=true# Subdirectories will not have their path shorteneddisplay-full-paths=true# Use file length instead of blocksdisplay-apparent-size=true# No colors will be printedno-colors=true# No percent bars or percentages will be displayedno-bars=trueLicensing and Governance
When evaluating system management utilities for infrastructure deployment, licensing terms determine organizational suitability. The project is licensed under the Apache License 2.0 terms allowing free distribution and modification for personal and commercial usage. Full licensing guidelines and distribution stipulations are published in the Dust Project License.
Related tools
More options with a similar category or technology profile.
diskus
Minimal, fast alternative to du -sh written in Rust using multi-threaded directory traversal.
peco
Simplistic interactive filtering tool for Unix pipelines, process lists, and file trees.
Dapr CLI
Command-line tool for managing Dapr distributed application runtime environments and sidecars.
Freeze
Generate beautiful image screenshots and SVGs of code snippets and terminal outputs.