What Is dysk? The Beginner's Guide to the Modern df Alternative

CodexFuse Team · 2026-11-04T22:31:35.022Z · 11 min read min read

What Is dysk, Exactly?

dysk is a Rust command-line utility that lists your filesystems in a clean, sortable table — the project's own description is "a linux utility to get information on filesystems, like df but better." If you already know the classic df command, you know dysk: it reads the same per-filesystem numbers (size, used, free, usage percentage, mount points) and shows them in a far more readable layout with extras like disk-type labels, custom columns, filters, and JSON output.

If you run a website on VPS hosting, you already live with the moment a disk fills up and everything breaks at once — logs stop, uploads fail, the database chokes. dysk exists for exactly that moment: one glance at a table and you know which filesystem is full, on which device, and how urgent it is.

This guide explains dysk from zero: what it does, how to install it, how to read and customize its output, and where it fits next to df, du, and its Rust sibling dust. All facts below are from dysk's own README, its official documentation site, and its release history, current as of November 4, 2026.

Where dysk Comes From (and Why Old Articles Call It lfs)

dysk was previously known as lfs. The rename landed in version 2.6.1 back in July 2023 (confirmed by the Fedora packaging changelog), so any tutorial older than that calls the same tool "lfs" — same developer, same codebase, new name.

The project lives at github.com/Canop/dysk, maintained by the GitHub user Canop, and is licensed MIT. The repository was created in October 2020 and, as of November 4, 2026, holds about 2,888 stars with a fresh v3.8.2 release tagged on November 2 — two days before this writing. That pace matters: dysk is actively developed, not an abandoned weekend project.

Why dysk Exists When df Already Does the Job

df has shipped with every Unix-like system for decades, and dysk's official stance — "like df but better" — acknowledges that most of the information dysk shows is also available through df. As one long-standing guide puts it, "While most of the information provided by dysk is also available through df, dysk offers a few improvements" — and those improvements are exactly why beginners prefer it.

First, units. "Unlike df, dysk exclusively uses SI units, eliminating the need to refer to the help section to find the right argument for the correct size units." There is no df -h vs df -H vs df --block-size guessing game; a megabyte is always a million bytes. (A --units binary flag exists if you want MiB-style powers of two.)

Second, presentation: "Unlike df, dysk presents information in a tabular format, provides custom column display, advanced filtering, and sorting options, and can export data in JSON format." df's fixed column list shows everything or nothing; dysk's table is configurable with the columns of your choice.

Third, identity: dysk labels each disk by type — remov for a USB key, HDD for rotational disks, SSD, RAM for zram, LVM, crypt for encrypted volumes, imag for disk images — and shows the filesystem type alongside each mount. When five mounts scroll by, you instantly know which one is the USB stick and which one is your root SSD.

How to Install dysk (dysk install)

One caveat before the steps: dysk's README body documents no install commands at all — it defers with the line "Complete documentation lives at https://dystroy.org/dysk", which links to the official Install page. The commands below all come from that official install page (current as of November 4, 2026), so attribute them to the docs, not the README.

Follow these steps in order:

  1. Pick your route. The simplest path depends on your system: Rust users take cargo, Linux desktop users take their package manager, macOS users take Homebrew.
  2. Rust toolchain route (any platform): run cargo install --locked dysk. On Ubuntu or Debian you may first need sudo apt install build-essential for the compiler toolchain.
  3. Conda route: run pixi global install dysk, pixi add dysk, or conda install --channel conda-forge dysk.
  4. macOS route: run brew install dysk — Homebrew carries v3.8.2, the current release.
  5. Linux distro route: Arch users run pacman -S dysk (maintained by Orhun Parmaksız; package description: "Get information on your mounted filesystems"); MacPorts and nixpkgs unstable also carry v3.8.2, openSUSE Tumbleweed carries v3.8.1. Debian and Ubuntu's rust-dysk package lags a few versions behind.

Prefer binaries? "Binaries are made available at every release in download," and GitHub releases hold previous releases too — one archive per target (for example dysk-v3.8.1-x86_64-unknown-linux-musl.tar.gz) with a sha256sums file. Each archive also contains the man page and shell completions for bash, zsh, and fish, so you get tab completion for free.

Your First dysk Run: Reading the Default Table

Run dysk with no arguments and you get a table of your mounted filesystems. The default display is "a table, which can be configured with the columns of your choice" — out of the box it shows, per mount, the device or disk identity, total size, used space, free space, usage percentage, the filesystem type, and the mount point.

Read it like a triage nurse reads vitals: scan the usage-percentage column first, because the single most common question is "which filesystem is almost full?" The disk-identity column then tells you whether that near-full mount is your root SSD, a spinning HDD, or a removable USB key — context df makes you work for. A high percentage on / is an emergency; the same number on a mounted USB drive is a Tuesday.

Two platform notes worth knowing: dysk "works on Linux, Mac, and Windows," but its underlying data crate marks Windows support as experimental — on Linux and macOS it is fully at home. And on Linux, stats reading is now time-bounded so a hung remote volume can't freeze the tool; you can tune that with dysk --timeout no or dysk --timeout 5ms.

Sorting, Filtering, and Custom Columns

The default table answers the basic questions. These flags answer the follow-ups:

  • Sort by what matters: -s use sorts the fullest filesystems first; -s free and -s free_percent flip the view to "where do I still have room?" Inode exhaustion gets its own angle: -s inodes sorts the fullest-first by inode usage, and v3.8.x added use_bar and inodes_bar columns for at-a-glance bars.
  • Filter to the interesting ones: "The query syntax lets you specify the filesystems you want" — for example, -f 'free_percent>20%' hides everything with more than 20% free so only the cramped mounts remain. Running Docker? Images and containers can silently eat tens of gigabytes of overlay storage; filter the table down to the cramped mounts before you go hunting. (Our Docker guide covers managing that side of the stack.)
  • Choose your columns: -c picks exactly the columns you want — -c all shows everything, with redundant columns stripped automatically.
  • See everything, including the weird stuff: -a shows non-"normal" devices (the imag disk images live here), and dysk <path> shows the filesystem holding that path even when it is not "normal."

Exporting to JSON and CSV (dysk json csv)

Pretty tables are for humans; scripts want data. dysk covers both: dysk --json "outputs the result as JSON which can be used for your own scripts or programs," and "You can output the table as CSV too."

This is the feature that turns dysk from a nicer df into monitoring infrastructure. A cron job can run dysk --json every few minutes, parse the usage percentages, and page you when / crosses 85% — no brittle awk over df output, no parsing ambiguity, just structured data. Pipe the JSON through a JSON formatter once while you are building the check so you can see the field names clearly.

dysk vs df vs du: Which Tool Answers Which Question

dysk officially frames itself as a df replacement, not a du replacement. The model split is worth stating plainly, because it decides which tool you reach for:

QuestionToolHow it answers
Which filesystem is full?dysk (or df)Reads per-mount stats from the OS — instant, whole-system view. dysk adds a readable table, disk-type labels, sorting, filters, and JSON/CSV.
Which folder or file is eating the space?du, ncdu, dustWalks the directory tree and totals file sizes — slower, but names the culprit. "Trust du when you want to identify which files or directories are consuming space."
What is the true filesystem-level quota?df / dyskFilesystem metadata, not a directory walk. "Trust df when you need the true filesystem-level quota and availability."

As Red Hat's du-vs-df guide frames it: "The df command provides a sweeping ballpark figure for how much space is being utilized on your filesystem as a whole. The du command is a much more accurate snapshot of a given directory or subdirectory." dysk inherits df's strength — and df's blind spot.

One sibling deserves a one-line rule, because CodexFuse readers may know it: dust ("du + rust = dust. Like du but more intuitive.") is a tree walker — "Dust will list a slightly-less-than-the-terminal-height number of the biggest subdirectories or files and will smartly recurse down the tree to find the larger ones." So: dust answers "which folder is eating my disk?" while dysk answers "which filesystem is full?" They pair; they never compete. This dysk tutorial never presents dysk as a dust alternative — that would cannibalize its sibling post.

What dysk Cannot Do

Honesty about limits is what separates a good tool recommendation from hype. dysk reads filesystems; it does not walk trees. So it shows fullness instantly but can never name the offending file or directory — for that, pair it with a du-family tool like dust or ncdu. Say it once and remember it: filesystem reader, not tree walker.

A few smaller caveats: Windows support is still experimental in the underlying data library, so expect the smoothest experience on Linux and macOS. Inode columns exist but matter mostly on traditional filesystems (the Mac/iokit inode reading is, per the release notes, "not very interesting for APFS"). And like any df-class tool, dysk reports what the filesystem metadata says — deleted-but-still-open files can make df-class numbers and du-class numbers disagree, which is itself a useful diagnostic signal, not a bug.

Sources

  • dysk GitHub README — github.com/Canop/dysk (repo tagline: "A linux utility to get information on filesystems, like df but better"; description: "A utility listing your filesystems, on Linux, Mac, and Windows."; MIT license; ~2,888 stars as of 2026-11-04)
  • dysk official docs — dystroy.org/dysk (overview) and dystroy.org/dysk/install (installation; all install commands cited from this page)
  • dysk GitHub releases/tags — v3.8.2 tagged 2026-11-02; v3.8.1 (2026-10-17); v3.7.0 (2026-09-13)
  • lfs-core crate README — the data source behind dysk's stats; Windows support marked experimental
  • repology "dysk package versions" — 65 known packages (Homebrew, MacPorts, nixpkgs, Arch, openSUSE, Debian/Ubuntu)
  • ostechnix — "How To Get Linux Filesystems Information Using Dysk Utility" (guide, ~September 2023)
  • terminaldock.com/dysk — tool-catalog page (updated ~October 29, 2026)
  • Fedora el-rust-pkgs-spec changelog — lfs renamed to dysk in 2.6.1 (July 2023)
  • Red Hat — "Linux tools: du vs. df" (du-vs-df framing)
  • copyprogramming — "Difference Between du and df" / "Df vs du" (trust-du / trust-df lines)
  • dust GitHub README — bootandy/dust (the du-replacement sibling; tree-walker model)

Frequently Asked Questions

Is dysk a replacement for df or for du?

dysk is a df replacement. It reads per-filesystem stats from the OS and presents them better — sortable tables, filters, disk-type labels, JSON and CSV export. It is not a du replacement: it never walks directory trees, so for "which folder is eating my space?" you still want du, ncdu, or dust.

Can dysk tell me which file is using all my disk space?

No. dysk shows how full each filesystem is, but it cannot name the file or directory responsible — that requires a tree walker. When dysk shows a mount at 97%, hand off to dust or du to find the culprit inside it.

Does dysk work on macOS and Windows?

The official install page states "dysk works on Linux, Mac, and Windows," with prebuilt binaries for each. One caveat: the underlying lfs-core data library marks Windows support as experimental, so Linux and macOS are the smoothest platforms today.

How do I use dysk output in a script?

Run dysk --json — it "outputs the result as JSON which can be used for your own scripts or programs" — or ask for CSV with the same ease. That makes dysk a clean fit for cron-based disk monitoring without fragile awk parsing of df output.

Why do old tutorials call this tool "lfs"?

Because it was. dysk "was previously known as lfs" until the 2.6.1 release in July 2023 renamed it. Any guide from before then that mentions lfs is describing the same tool under its old name.

Featured on Twelve Tools Hunt for Tools Featured on LaunchBuff Launch Llama Tools Launch your MCP Top Web Development Companies in the US - OnToplist.com Designer Listings Listed on SeeWhatNewAI