nvme-cli and libnvme

September 18, 2026 ยท View on GitHub

nvme-cli is the command line tool for managing NVMe devices. It is built on the libnvme library. Together they support local NVMe drives, NVMe-oF fabrics (TCP, RDMA, FC), and many vendor-specific plugins.

For more information on the NVM Express standard, see https://nvmexpress.org.

The project is developed on GitHub at https://github.com/linux-nvme/nvme-cli.

Subscribe to linux-nvme@lists.infradead.org for Linux NVMe discussions and development. The list is archived at https://lists.infradead.org/mailman/listinfo/linux-nvme

Sharednvme-clilibnvme
BuildMesonBuildPyBuild
Static analysisCoverity Scan Build Status clang-analyzer
Test coveragecodecov
Docsnvme-cli Docslibnvme Docs
PackagePyPI PyPI - Wheel
Licensenvme-cli Licenselibnvme License

Quick start

$ meson setup .build
$ meson compile -C .build
# meson install -C .build

It is also packaged by most Linux distributions (Alpine, Arch, Debian, Fedora, FreeBSD, Gentoo, Ubuntu, Nix(OS), openSUSE, ...) as nvme-cli.

Once installed, find the top-level documentation with man nvme, or a short summary with nvme help.

Documentation

TopicWhere
Building from source: dependencies, alternative build systems, packaging, plugin selectionBUILDING.md
Configuring host identity, NVMe-oF connections, and multi-orchestrator coordinationCONFIGURATION.md
Pre-built binaries, reproducing CI builds, memory/sanitizer testingTESTING.md
libnvme coverage against NVMe specifications, chapter by chapterSPEC-COVERAGE.md
Command/plugin man pagesman nvme, or browse Documentation
Contributing: adding commands/plugins, API naming, commit & PR workflowCONTRIBUTING.md
Reporting security vulnerabilitiesSECURITY.md
Release historyNEWS.md

AI-assisted development resources live in the companion repository nvme-cli-ai; see CONTRIBUTING.md for how they fit into the workflow.