Nvmetools
Epic NVMe Tools
Linux or Windows NVMe CLI tools!
https://www.nvmetools.com/
Pipy
Install on Linux or Windows:
pip install nvmetools
Github
https://github.com/jtjones1001/nvmetools
git clone git@github.com:jtjones1001/nvmetools.git # git clone https://github.com/jtjones1001/nvmetools.git
Documentation
Online documentation:
https://nvmetools.readthedocs.io/en/latest/
Read Commands
All console commands return a 0 on pass and non-zero on fail.
listnvme
listnvme
Description: Console command that lists the NVMe drives in the system.
- Displays the NVMe drives in the system. Each drive has a unique ‘NVMe number’ that identifies that specific NVMe. The other console commands require this number to know which NVMe drive to read or test.
readnvme
Show basic stats:
readnvme -n 0
Show all stats:
readnvme -n 0 -a
Description: Console command that displays and logs NVMe drive information.
- Reads NVMe drive information using the Admin Commands: Get Log Page, Get Feature, Identify Controller, and Identify Namespace. A few parameters, such as PCIe location and link info, are read from the OS.
viewnvme
Generate html report:
viewnvme -n 0
Description: Console command that displays NVMe drive information in html format.
- Reads NVMe drive information using the Admin Commands: Get Log Page, Get Feature, Identify Controller, and Identify Namespace. A few parameters, such as PCIe location and link info, are read from the OS.
Check Commands
All console commands return a 0 on pass and non-zero on fail.
checknvme
Report simple PASS / FAIL status. Also generates html report.
Show health and wear:
checknvme -n 0
Description: Console command that checks the health of NVMe drive then displays information in html format.
- Verifies the NVMe drive health by running the short self-test diagnostic, checking the SMART attributes for errors and log page 6 for prior self-test failures.
- If nvme is not specified then all NVMe drives are checked.
Test Framework Commands
All console commands return a 0 on pass and non-zero on fail.
testnvme
Example:
testnvme big_demo --nvme 1 --volume g:
Description: Console command that runs an NVMe Test Suite.
- Runs the NVME Test Suite defined in the file provided. The test suite file is a python file. By default testnvme first looks for the file in the local directory, then in the ~/Documents/nvmetools/suites directory, and lastly in the the nvmetools package.
updatenvme
NOT FIRMWARE UPDATE
Example:
updatenvme .
Description: Console command that updates test suite results.
- Test Suite results can be updated after completion by editing the results.json files. This command updates the html dashboard, PDF report, and results.json summary sections to reflect any changed verification results.
Test Framework
See https://nvmetools.readthedocs.io/en/latest/framework.html