Nvmetools: Difference between revisions

From Omnia
Jump to navigation Jump to search
 
(3 intermediate revisions by the same user not shown)
Line 18: Line 18:
  git clone https://github.com/jtjones1001/nvmetools.git
  git clone https://github.com/jtjones1001/nvmetools.git


== Usage ==
== Documentation ==


Online documentation:
Online documentation:
  https://nvmetools.readthedocs.io/en/latest/
  https://nvmetools.readthedocs.io/en/latest/
== Read Commands ==


All console commands return a 0 on pass and non-zero on fail.
All console commands return a 0 on pass and non-zero on fail.
Line 42: Line 44:
Description: Console command that displays and logs NVMe drive information.
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.
* 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 ===
=== checknvme ===
Line 54: Line 68:
* If nvme is not specified then all NVMe drives are checked.
* If nvme is not specified then all NVMe drives are checked.


=== viewnvme ===
== 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 ==


Generate html report:
See https://nvmetools.readthedocs.io/en/latest/framework.html
viewnvme -n 0


Description: Console command that displays NVMe drive information in html format.
== keywords ==
* 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.

Latest revision as of 23:38, 13 May 2024

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

keywords