NVME(1)

๐Ÿ’– NAME ๐Ÿ’–

Welcome to the NVMe Manual, bestie โ€” this is nvme(1), aka the NVMe storage command line interface utility (nvme-cli). Sheโ€™s the utility that runs the NVMe show, periodt. ๐Ÿ‘‘๐Ÿฆ‹

โœจ SYNOPSIS โœจ

Hereโ€™s the built-in plugin shape first, then the extension-plugin shape, both exactly as the manual lays them out:

built-in plugin:

nvme [<global-options>] <command> <device> [<args>]

extension plugins:

nvme [<global-options>] <plugin> <command> <device> [<args>]

No cap, this is the whole invocation vibe. ๐Ÿซถ

๐ŸŒˆ DESCRIPTION ๐ŸŒˆ

NVM-Express is a fast, scalable host controller interface designed to address the needs for not only PCI Express based solid state drives, but also NVMe-oF(over fabrics). Itโ€™s giving speed, scale, and range, literally. โœจ

This nvme program is a user space utility to provide standards compliant tooling for NVM-Express drives. It was made specifically for Linux as it relies on the IOCTLs defined by the mainline kernel driver. Linux-only main character energy, and thatโ€™s on purpose. ๐Ÿง๐Ÿ’…

๐Ÿ‘‘ NVME COMMANDS ๐Ÿ‘‘

The utility has sub-commands for all admin and io commands defined in the specification and for displaying controller registers. There is also an option to submit completely arbitrary commands. For a list of commands available, run nvme help. Honestly? A little nvme help moment fixes a lot. ๐Ÿ’–

๐Ÿฆ‹ NVME CLI SUB-COMMANDS ๐Ÿฆ‹

๐ŸŽ€ Main commands ๐ŸŽ€

Okay bestie, hereโ€™s the full main-command menu, in order, no skips, no โ€œI forgot oneโ€ energy:


๐Ÿ”Œ Plugins/Vendor extension commands ๐Ÿ”Œ

okay bestie, this is the vendor corner of the group chat โ€” every drive brand showed up with their own little plugin and honestly? obsessed. each one is listed with exactly what it does ๐Ÿ’–

  • nvme amzn id-ctrl โ€” Sends NVMe Identify Controller, Amazon style
  • nvme amzn stats โ€” Gets EBS volume stats ๐Ÿ“ˆ
  • nvme-dapustor-smart-log-add(1) โ€” Retrieves the DapuStor SMART Log, shows it
  • nvme dell id-ctrl โ€” Sends NVMe Identify Controller, Dell edition
  • nvme dera smart-log-add โ€” Retrieves the Dera SMART Log, shows it
  • nvme-huawei-id-ctrl(1) โ€” Huawei identify controller ๐Ÿ€„
  • nvme-huawei-list(1) โ€” Lists all Huawei NVMe devices and namespaces on the machine, the whole lineup ๐Ÿ’…
  • nvme ibm crit-log โ€” Displays IBM Smart Log Information
  • nvme ibm persist-event-log โ€” IBM specific Persistent Event Log, the lore but IBM flavored
  • nvme ibm vpd โ€” Displays IBM VPD Information
  • nvme innogrit get-cdump โ€” gets cdump data ๐Ÿ“ฆ
  • nvme innogrit get-eventlog โ€” gets the event log ๐Ÿ“‹
  • nvme-inspur-nvme-vendor-log(1) โ€” Retrieves the Inspur Vendor Log, shows it
  • nvme-intel-id-ctrl(1) โ€” Sends NVMe Identify Controller, Intel style
  • nvme-intel-internal-log(1) โ€” Retrieves the Intel internal firmware log and saves it ๐Ÿ’พ
  • nvme-intel-lat-stats(1) โ€” Retrieves the Intel IO Latency Statistics log, shows it ๐Ÿ“Š
  • nvme intel lat-stats-tracking โ€” Enables and disables Latency Statistics logging. on or off, your call ๐Ÿ”˜
  • nvme-intel-market-name(1) โ€” Retrieves the Intel Marketing Name log, shows it ๐Ÿท๏ธ
  • nvme intel set-bucket-thresholds โ€” Sets Latency Stats Bucket Values, and saves it ๐Ÿชฃ
  • nvme-intel-smart-log-add(1) โ€” Retrieves the Intel SMART Log, shows it
  • nvme-intel-temp-stats(1) โ€” Retrieves the Intel Temperature Statistics log, shows it ๐ŸŒก๏ธ
  • nvme-mangoboost-id-ctrl(1) โ€” Sends NVMe Identify Controller, mango mode ๐Ÿฅญ
  • nvme memblaze clear-error-log โ€” Clears the error log ๐Ÿงน
  • nvme memblaze get-pm-status โ€” Gets Memblaze Power Manager Status โšก
  • nvme memblaze lat-get-feature-x โ€” Gets the Enabled/Disabled state of the Latency Monitor feature
  • nvme memblaze lat-log โ€” Sets Memblaze High Latency Log
  • nvme memblaze lat-log-print โ€” Outputs the Memblaze High Latency Log ๐Ÿ–จ๏ธ
  • nvme memblaze lat-log-print-x โ€” Gets the High Latency log and shows it
  • nvme memblaze lat-set-feature-x โ€” Sets Enable/Disable for the Latency Monitor feature ๐Ÿ”˜
  • nvme memblaze lat-stats โ€” Enables and disables Latency Statistics logging
  • nvme memblaze lat-stats-print โ€” Retrieves the IO Latency Statistics log, shows it ๐Ÿ“Š
  • nvme memblaze lat-stats-print-x โ€” Gets the Latency Statistics log and shows it
  • nvme memblaze perf-stats-print-x โ€” Gets the Performance Stat log and shows it ๐ŸŽ๏ธ
  • nvme memblaze select-download โ€” Selective Firmware Download
  • nvme memblaze set-pm-status โ€” Sets Memblaze Power Manager Status โšก
  • nvme memblaze smart-log-add โ€” Retrieves the Memblaze SMART Log, shows it
  • nvme memblaze smart-log-add-x โ€” Retrieves the Memblaze SMART Log, shows it. yes it's basically the same one-liner as above, that's literally what the page says bestie, don't come for me ๐Ÿ˜ญ
  • nvme micron clear-fw-activate-history โ€” Clears FW activation history ๐Ÿงน
  • nvme-micron-clear-pcie-errors(1) โ€” Clears correctable PCIe errors
  • nvme micron cloud-SSD-plugin-version โ€” Displays plugin version info ๐Ÿท๏ธ
  • nvme micron cloud-boot-SSD-version โ€” Prints HyperScale Boot Version
  • nvme-micron-id-ctrl(1) โ€” Identify Controller, Micron flavored
  • nvme micron latency-logs โ€” Latency log details tracked by the drive ๐Ÿ“Š
  • nvme micron latency-stats โ€” Latency information for tracked commands โฑ๏ธ
  • nvme micron latency-tracking โ€” Latency monitoring feature control ๐ŸŽ›๏ธ
  • nvme micron log-page-directory โ€” Retrieves the log page directory ๐Ÿ“–
  • nvme micron plugin-version โ€” Displays plugin version info
  • nvme-micron-selective-download(1) โ€” Selective Firmware Download
  • nvme-micron-smart-log(1) โ€” Retrieves SMART/Health Log ๐Ÿ’–
  • nvme micron vs-cloud-log โ€” Retrieves Extended Health Information of the Hyperscale NVMe Boot SSD โ˜๏ธ
  • nvme micron vs-device-waf โ€” Reports SLC and TLC WAF ratio ๐Ÿ“
  • nvme micron vs-drive-info โ€” Retrieves Drive information ๐Ÿท๏ธ
  • nvme micron vs-fw-activate-history โ€” Displays FW activation history ๐Ÿ“œ
  • nvme-micron-internal-log(1) โ€” Retrieves Micron logs
  • nvme-micron-nand-stats(1) โ€” Retrieves NAND Stats ๐Ÿง 
  • nvme-micron-pcie-stats(1) โ€” Retrieves Micron PCIe error stats
  • nvme-micron-smart-add-log(1) โ€” Retrieves extended SMART data
  • nvme micron vs-smart-ext-log โ€” Retrieves extended SMART logs
  • nvme micron vs-smbus-option โ€” Enables/Disables SMBUS on the drive ๐Ÿ”˜
  • nvme micron vs-telemetry-controller-option โ€” Enables/Disables controller telemetry log generation ๐Ÿ“ก
  • nvme-micron-temperature-stats(1) โ€” Retrieves Micron temperature statistics ๐ŸŒก๏ธ
  • nvme micron vs-vendor-telemetry-log โ€” Retrieves Vendor Telemetry logs
  • nvme micron vs-work-load-log โ€” Retrieves Workload logs ๐Ÿ’ผ
  • nvme-netapp-ontapdevices(1) โ€” NetApp ONTAPdevices
  • nvme-netapp-smdevices(1) โ€” NetApp SMdevices
  • nvme nvidia id-ctrl โ€” Sends NVMe Identify Controller, NVIDIA edition ๐ŸŽฎ
  • nvme-ocp-clear-fw-activate-history(1) โ€” Clears Firmware Update History ๐Ÿงน
  • nvme-ocp-clear-pcie-correctable-error-counters(1) โ€” Clears PCIe Correctable Error Counters
  • nvme-ocp-device-capability-log(1) โ€” Retrieves the Device Capabilities Log Page ๐Ÿ“„
  • nvme-ocp-eol-plp-failure-mode(1) โ€” Defines the EOL or PLP Circuitry Failure Mode โš ๏ธ
  • nvme-ocp-error-recovery-log(1) โ€” Retrieves the Error Recovery Log Page ๐Ÿ›Ÿ
  • nvme ocp fw-activate-history โ€” Retrieves the Firmware Activation History Log Page ๐Ÿ“œ
  • nvme-ocp-get-clear-pcie-correctable-errors(1) โ€” Gets the Clear PCIe Correctable Error Counters Feature
  • nvme-ocp-get-dssd-async-event-config(1) โ€” Gets the DSSD Asynchronous Event Configuration ๐ŸŽ›๏ธ
  • nvme-ocp-get-dssd-power-state-feature(1) โ€” Gets the DSSD Power State Feature โšก

okay bestie, next chunk is the plug-in zone โ€” every vendor out here decided their SSD needed its own โœจflavorโœจ of log pages, and honestly? iconic of them. here's the whole roster, nobody gets left out:


๐ŸŽ€ OCP plug-in ๐ŸŽ€


๐Ÿงš Samsung ๐Ÿงš


๐Ÿฆ‹ Seagate ๐Ÿฆ‹


๐Ÿ“ ScaleFlux (sfx) ๐Ÿ“

  • nvme sfx change-cap โ€” Dynamic change capacity
  • nvme sfx dump-evtlog โ€” dump evtlog into file and parse warning & error log
  • nvme sfx expand-cap โ€” expand the last namespace capacity lossless
  • nvme sfx get-bad-block โ€” Retrieve bad block table of block device, show it
  • nvme sfx get-feature โ€” Get a feature
  • nvme sfx lat-stats โ€” Retrieve ScaleFlux IO Latency Statistics log, show it
  • nvme sfx query-cap โ€” Query current capacity info
  • nvme sfx set-feature โ€” Set a feature
  • nvme sfx smart-log-add โ€” Retrieve ScaleFlux SMART Log, show it
  • nvme sfx status โ€” Retrieve the ScaleFlux status output, show it

๐ŸŒธ Shannon ๐ŸŒธ

  • nvme shannon get-additional-feature โ€” Get additional Shannon feature
  • nvme shannon id-ctrl โ€” Retrieve Shannon ctrl id, show it
  • nvme shannon set-additioal-feature โ€” Set additional Shannon feature (yes bestie, that spelling is literally in the source, we do not fix it, we respect it ๐Ÿ’…)
  • nvme shannon smart-log-add โ€” Retrieve Shannon SMART Log, show it

๐Ÿ’œ Sandisk (sndk) ๐Ÿ’œ


๐Ÿซถ Solidigm ๐Ÿซถ


๐ŸŒˆ ssstc ๐ŸŒˆ

  • nvme ssstc smart-log-add โ€” Retrieve ssstc SMART Log, show it

โญ Toshiba โญ


๐ŸŽ€ Transcend ๐ŸŽ€


๐Ÿงš Virtium ๐Ÿงš


๐Ÿ‘‘ WDC ๐Ÿ‘‘


๐Ÿฆ‹ YMTC ๐Ÿฆ‹

  • nvme ymtc smart-log-add โ€” Retrieve YMTC SMART Log, show it

๐Ÿ’… GLOBAL OPTIONS ๐Ÿ’…

okay so these are the big-picture flags โ€” they live at the top-level nvme command, and every subcommand gets to use them. bestie, they're always there for you ๐Ÿซถ

  • --dry-run โ€” shows you the command it would run, then just... doesn't run it. ghosting the actual execution, iconic โœจ
  • --no-ioctl-probing โ€” turns off probing for 64-bit IOCTL support. no cap, that's all it does.
  • --no-retries โ€” kills the retry logic on transient errors. one shot, no do-overs ๐Ÿ’€
  • -o <fmt>, --output-format=<fmt> โ€” picks the reporting format: normal, tabular, json, or binary. only one output format at a time, pick your fighter ๐ŸŽ€
  • --output-format-version=<version> โ€” chooses the output format version. version 1 uses the original field naming, while version 2 (the default) gives you more consistent and script-friendly field names. any other version gets rejected โ€” no vibes allowed ๐Ÿ˜ญ
  • --quiet โ€” suppresses informational messages. errors still get reported (we're not hiding the tea), and --quiet cancels any --verbose for the library log level. they literally can't coexist ๐Ÿ’…
  • --set-options=<key=value>[,<key=value>...] โ€” sets libnvme library options just for this invocation. supported keys are force-4k, mi-probe-enabled, test-base-dir and test-sysfs-dir. that's the whole list, no extras, periodt.
  • --timeout=<ms> โ€” sets the command timeout in milliseconds. infinite or -1 waits with no time limit (0xffffffff). the way that's just forever ๐Ÿ•ฐ๏ธ
  • -v, --verbose โ€” more detail in the output. you can stack it multiple times to get even louder ๐Ÿ”ฅ

and here's the cute part: these can also be set as machine-wide defaults in nvme-cli.conf(5). but a command-line flag always overrides the file. file says one thing, your flag says another, the flag wins, slay ๐Ÿ‘‘


๐ŸŒˆ RETURNS ๐ŸŒˆ

every single command keeps it consistent, fr fr โ€” returns 0 on success and 1 on failure. that's it. that's the whole vibe check.


๐ŸŒธ ENVIRONMENT ๐ŸŒธ

  • NO_COLOR โ€” when it's set to a non-empty value, nvme prints no colors or bold text. see https://no-color.org/ for the lore. without it, errors, warnings and headings get highlighted when they go to a terminal โ€” so pretty โœจ

๐Ÿฆ‹ FURTHER DOCUMENTATION ๐Ÿฆ‹

go look at the freely available references on the Official NVM-Express Site<sup>[1]</sup>. iykyk ๐Ÿ“š


๐Ÿ‘‘ AUTHORS ๐Ÿ‘‘

this is written and maintained by Keith Busch<sup>[2]</sup>. king behavior, honestly.


๐Ÿ’œ REPORTING BUGS ๐Ÿ’œ

patches and issues may be submitted to the official repository at https://github.com/linux-nvme/nvme-cli or the Linux NVMe mailing list linux-nvme<sup>[3]</sup>. found something cursed? tell them, don't suffer in silence ๐Ÿ™ˆ


โญ NVME โญ

part of the nvme suite. one of many, all together, cute little family ๐ŸŽ€


๐Ÿ“ NOTES ๐Ÿ“

  1. Official NVM-Express Site http://nvmexpress.org
  2. Keith Busch mailto:kbusch@kernel.org
  3. linux-nvme mailto:linux-nvme@lists.infradead.org

and that's a wrap on the whole page, bestie!! ๐Ÿงšโœจ this edition is dated 10/30/2026, from the NVMe source โ€” version NVME(1), obviously ๐Ÿ’… go forth and query your drives responsibly ๐Ÿ’–

๐Ÿ“ฆ where this page comes from