# nvme-cli

> NVMe user space tooling for Linux

**Wikidata**: [Q104892539](https://www.wikidata.org/wiki/Q104892539)  
**Source**: https://4ort.xyz/entity/nvme-cli

## Summary
**nvme-cli** is a free, open-source user-space tooling suite for Linux that provides command-line utilities to manage and interact with NVMe (Non-Volatile Memory Express) storage devices. It is distributed under the GNU General Public License, version 2.0 or later, and is widely used for configuring and monitoring NVMe drives on Linux systems.

## Key Facts
- **License**: GNU General Public License, version 2.0 or later (as of 2021-01-19).
- **Operating System**: Designed exclusively for Linux.
- **Initial Release**: Version 0.1 was released on 2015-10-06.
- **Latest Major Release**: Version 1.0 was released on 2016-11-15.
- **Programming Language**: Written in C.
- **Package Availability**: Available in repositories for Fedora, Ubuntu, Arch Linux, Alpine Linux, Debian, and openSUSE.
- **Website**: Official project website is [nvmexpress.org](http://nvmexpress.org).
- **Source Code**: Hosted on GitHub at [https://github.com/linux-nvme/nvme-cli](https://github.com/linux-nvme/nvme-cli).
- **Classification**: Utility software and free software.

## FAQs
### Q: What is nvme-cli used for?
A: nvme-cli is a command-line toolset for managing NVMe storage devices on Linux, including tasks like device identification, firmware updates, and performance monitoring.

### Q: Is nvme-cli free to use?
A: Yes, nvme-cli is free software distributed under the GNU General Public License, version 2.0 or later, allowing users to run, study, modify, and redistribute it.

### Q: Which Linux distributions support nvme-cli?
A: nvme-cli is available in the package repositories of Fedora, Ubuntu, Arch Linux, Alpine Linux, Debian, and openSUSE.

### Q: How do I install nvme-cli?
A: Installation instructions vary by distribution. For example, on Ubuntu, you can install it via `sudo apt install nvme-cli`, while on Fedora, use `sudo dnf install nvme-cli`.

### Q: What programming language is nvme-cli written in?
A: nvme-cli is written in C, a low-level programming language commonly used for system utilities.

## Why It Matters
nvme-cli plays a critical role in the Linux ecosystem by providing essential tools for managing NVMe storage devices, which are increasingly used in modern computing for their speed and efficiency. As NVMe technology becomes more prevalent, nvme-cli ensures that Linux users have the necessary utilities to configure, monitor, and maintain these devices. Its open-source nature allows for community contributions and customization, making it a versatile tool for both novice and advanced users. By offering a standardized set of commands, nvme-cli simplifies the management of NVMe drives, reducing complexity and improving system performance.

## Notable For
- **First Major Release**: Version 1.0 was a significant milestone, marking the toolset's stability and feature completeness.
- **Cross-Distribution Support**: Available in multiple Linux distributions, ensuring broad compatibility.
- **Open-Source License**: Uses the GNU GPL, promoting transparency and community involvement.
- **GitHub Hosting**: The project is hosted on GitHub, facilitating collaboration and version control.
- **NVMe-Specific Tools**: Provides specialized commands for NVMe operations not available in generic storage tools.

## Body
### Overview
nvme-cli is a collection of command-line utilities designed to interact with NVMe storage devices on Linux. It was first released in October 2015 and has since been updated multiple times, with version 1.0 marking a major stable release in November 2016.

### Development and Releases
- The project began with version 0.1 on 2015-10-06 and has since seen regular updates, with version 1.0 released in 2016.
- Each release includes improvements and new features tailored to NVMe storage management.

### Licensing and Distribution
- Licensed under the GNU General Public License, version 2.0 or later, ensuring it remains free and open-source.
- Available as a package in various Linux distributions, including Fedora, Ubuntu, Arch Linux, and Debian.

### Technical Details
- Written in C, a language chosen for its efficiency and compatibility with Linux kernel development.
- The source code is hosted on GitHub, allowing for community contributions and issue tracking.

### Usage and Impact
- Provides essential tools for NVMe device management, including firmware updates and performance monitoring.
- Supports a wide range of Linux distributions, ensuring broad adoption and usability.

## References

1. [Source](https://api.github.com/repos/linux-nvme/nvme-cli)
2. [Release 0.1. 2015](https://github.com/linux-nvme/nvme-cli/releases/tag/v0.1)
3. [Release 0.2. 2015](https://github.com/linux-nvme/nvme-cli/releases/tag/v0.2)
4. [Release 0.3. 2016](https://github.com/linux-nvme/nvme-cli/releases/tag/v0.3)
5. [Release 0.4. 2016](https://github.com/linux-nvme/nvme-cli/releases/tag/v0.4)
6. [Release 0.5. 2016](https://github.com/linux-nvme/nvme-cli/releases/tag/v0.5)
7. [Release 0.6. 2016](https://github.com/linux-nvme/nvme-cli/releases/tag/v0.6)
8. [Release 0.7. 2016](https://github.com/linux-nvme/nvme-cli/releases/tag/v0.7)
9. [Release 0.8. 2016](https://github.com/linux-nvme/nvme-cli/releases/tag/v0.8)
10. [Release 0.9. 2016](https://github.com/linux-nvme/nvme-cli/releases/tag/v0.9)
11. [Release 1.0. 2016](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.0)
12. [Release 1.1. 2016](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.1)
13. [Release 1.2. 2017](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.2)
14. [Release 1.3. 2017](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.3)
15. [Release 1.4. 2017](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.4)
16. [Release 1.5. 2018](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.5)
17. [Release 1.6. 2018](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.6)
18. [Release 1.7. 2019](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.7)
19. [Release 1.8. 2019](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.8)
20. [Release 1.8.1. 2019](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.8.1)
21. [Release 1.9. 2019](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.9)
22. [Release 1.10. 2020](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.10)
23. [Release 1.10.1. 2020](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.10.1)
24. [Release 1.11. 2020](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.11)
25. [Release 1.11.1. 2020](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.11.1)
26. [Release 1.11.2. 2020](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.11.2)
27. [Release 1.12. 2020](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.12)
28. [Release 1.13. 2020](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.13)
29. [Release 1.14. 2021](https://github.com/linux-nvme/nvme-cli/releases/tag/v1.14)
30. [Release 2.0. 2022](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.0)
31. [Release 2.1. 2022](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.1)
32. [Release 2.1.1. 2022](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.1.1)
33. [Release 2.1.2. 2022](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.1.2)
34. [Release 2.2. 2022](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.2)
35. [Release 2.2.1. 2022](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.2.1)
36. [Source](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.3)
37. [Release 2.4. 2023](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.4)
38. [Release 2.5. 2023](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.5)
39. [Release 2.6. 2023](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.6)
40. [Release 2.7. 2023](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.7)
41. [Release 2.7.1. 2023](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.7.1)
42. [Release 2.8. 2024](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.8)
43. [Release 2.9. 2024](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.9)
44. [Release 2.9.1. 2024](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.9.1)
45. [Release 2.10. 2024](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.10)
46. [Release 2.10.1. 2024](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.10.1)
47. [Release 2.10.2. 2024](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.10.2)
48. [Release 2.11. 2024](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.11)
49. [Release 2.12. 2025](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.12)
50. [Release 2.13. 2025](https://github.com/linux-nvme/nvme-cli/releases/tag/v2.13)