{"id":51197958,"url":"https://github.com/flatironinstitute/cephdu","last_synced_at":"2026-06-27T22:03:05.728Z","repository":{"id":281915176,"uuid":"946792931","full_name":"flatironinstitute/cephdu","owner":"flatironinstitute","description":"A ncdu-like TUI for the Ceph File System, using xattrs instead of crawling","archived":false,"fork":false,"pushed_at":"2025-12-29T15:21:38.000Z","size":204,"stargazers_count":2,"open_issues_count":15,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-12-31T17:36:22.052Z","etag":null,"topics":["ceph","disk-usage","ncdu"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flatironinstitute.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-11T17:23:12.000Z","updated_at":"2025-12-29T15:21:42.000Z","dependencies_parsed_at":"2025-09-03T23:12:52.609Z","dependency_job_id":"830e6892-463f-4dec-88b9-2377694feed2","html_url":"https://github.com/flatironinstitute/cephdu","commit_stats":null,"previous_names":["flatironinstitute/cephdu"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/flatironinstitute/cephdu","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flatironinstitute%2Fcephdu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flatironinstitute%2Fcephdu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flatironinstitute%2Fcephdu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flatironinstitute%2Fcephdu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flatironinstitute","download_url":"https://codeload.github.com/flatironinstitute/cephdu/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flatironinstitute%2Fcephdu/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34869004,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-27T02:00:06.362Z","response_time":126,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ceph","disk-usage","ncdu"],"created_at":"2026-06-27T22:03:05.042Z","updated_at":"2026-06-27T22:03:05.722Z","avatar_url":"https://github.com/flatironinstitute.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cephdu\n\nA `ncdu`-like TUI for the Ceph File System. Uses the `rbytes` and `rentries` xattrs to display directory sizes and file counts without walking the file system.\n\n[![Build](https://github.com/flatironinstitute/cephdu/actions/workflows/rust.yml/badge.svg)](https://github.com/flatironinstitute/cephdu/actions/workflows/rust.yml) [![Built With Ratatui](https://ratatui.rs/built-with-ratatui/badge.svg)](https://ratatui.rs/)\n\n## Screenshot\n![screenshot](./cephdu.png)\n\n## Background\n\n`ncdu` and similar applications that display disk usage work by crawling the filesystem (walking the directory tree) and recursively adding up file sizes and counts. On most filesystems, there's no alternative. However, the Ceph File System stores the recursive bytes and recursive counts (`ceph.dir.rbytes` and `ceph.dir.rentries`) as \"extended attributes\", available with the `getxattr` syscall. This means we can get disk usage info without a potentially expensive crawl.\n\n## Installation\ncephdu consists of a single binary, compiled from Rust. The binary can be downloaded from a release or built from source.\n\n### Binaries\nBinaries are attached to each GitHub Release: https://github.com/flatironinstitute/cephdu/releases\n\n### From Source\nTo build and run with a Rust toolchain [installed](https://www.rust-lang.org/tools/install), from inside the repo run:\n```console\ncargo run\n```\n\nTo build an executable (dynamically linked by default):\n```console\ncargo build --release\n```\n\nTo build an executable that contains a default path to use if one is not given:\n```console\nCEPHDU_DEFAULT_DIR=/mnt/ceph/users/\\$USER cargo build --release\n```\nThe literal string `$USER` is substituted at runtime.\n\nTo build a static executable:\n```console\ncargo build --release cargo build --target=x86_64-unknown-linux-musl\n```\n\n## Usage\nSimply run `cephdu` from the command line and an interactive terminal user interface (TUI) will be displayed. Navigate using the arrow keys and Enter. For a full list of keyboard shortcuts, press `?`.\n\nThe CLI accepts one optional argument, the initial directory:\n```console\n❯ cephdu --help\nDisplay ceph space and file count (inode) usage in an interactive terminal\n\nUsage: cephdu [PATH]\n\nArguments:\n  [PATH]  Path to the directory to display\n\nOptions:\n  -h, --help  Print help\n```\n\n## Availability on Flatiron Institute Clusters\n\n`cephdu` is available under the `fi-utils` module on the Flatiron Institute clusters, rusty and popeye, and is the preferred way to look at disk usage on ceph.\n\n## License\nMIT\n\n## Author\n[Lehman Garrison](https://github.com/lgarrison/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflatironinstitute%2Fcephdu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflatironinstitute%2Fcephdu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflatironinstitute%2Fcephdu/lists"}