NVME-SHOW-TOPOLOGY(1)

πŸ’… nvme-show-topology πŸ’…

okay so welcome to the glow-up of nvme-show-topology, straight out of the NVMe Manual, section 1 (the big main-character section, iykyk). bestie, this one's a little cutie β€” it just shows you the whole family tree of every NVMe subsystem on your machine. no cap. 🌸


✨ NAME ✨

nvme-show-topology β€” literally just shows the topology of all NVMe subsystems πŸ¦‹


πŸŽ€ SYNOPSIS πŸŽ€

nvme [<global-options>] show-topology

πŸ’– DESCRIPTION πŸ’–

Show the topology of all NVMe subsystems. that's it, that's the whole vibe πŸ’… it's giving "family tree but make it storage" and honestly? obsessed.


🌈 OPTIONS 🌈

  • -r <order>, --ranking=<order> β€” sets the ranking order, and your choices are namespace (this is the default, bestie) or ctrl. heads up though: this only does anything for the normal output format β€” the JSON output is always namespace ordered, no exceptions, periodt.

πŸ‘‘ GLOBAL OPTIONS πŸ‘‘

these are the ones defined up at the top-level nvme command, and they're all available to this subcommand too. very generous of them fr fr.

  • --dry-run β€” prints the command that would be executed, but does not actually execute it. it's the "look but don't touch" of flags πŸ™ˆ
  • --no-ioctl-probing β€” disables probing for 64-bit IOCTL support.
  • --no-retries β€” disables retry logic on transient errors.
  • -o <fmt>, --output-format=<fmt> β€” sets the reporting format to normal, tabular, json, or binary. only one output format at a time, bestie β€” pick a lane πŸ’€
  • --output-format-version=<version> β€” selects the output format version. version 1 uses the original field naming, while version 2 (the default, and honestly the slay) provides more consistent and script-friendly field names. other versions get rejected, sorry not sorry.
  • --quiet β€” suppresses informational messages. errors are still reported, and --quiet cancels any --verbose for the library log level. it's giving "don't talk to me unless it's urgent" πŸ’œ
  • --set-options=<key=value>[,<key=value>...] β€” sets libnvme library options for this invocation. the supported keys are force-4k, mi-probe-enabled, test-base-dir and test-sysfs-dir.
  • --timeout=<ms> β€” sets the timeout for the command in milliseconds. infinite or -1 waits without a time limit (0xffffffff). patience is a virtue, apparently 🧚
  • -v, --verbose β€” increases the level of detail in the output. may be specified multiple times to further increase verbosity. go off, stack those -vs, we love a maximalist πŸ”₯
also important: these options can also be set as machine-wide defaults in nvme-cli.conf(5). a command-line flag always overrides the file β€” CLI stays the main character, always. πŸ‘‘

⭐ EXAMPLES ⭐

the one and only iconic example:

nvme show-topology

🫢 NVME 🫢

part of the nvme-user suite. one big happy family πŸ’–


okay that's the whole page, you ate that. go forth and admire your topology, bestie 🌟

sign-off moment πŸŽ€ β€” this was NVMe (that's the source, and the version, all in one little word), dated 10/30/2026, and the page itself is NVME-SHOW-TOPOLOGY(1). mwah πŸ’‹

πŸ“¦ where this page comes from