NVME-ID-NS-LIST(1)
π nvme-id-ns-list β bestie's guide to listing namespaces β¨
okay so this is a page from the NVMe Manual and it's all about nvme-id-ns-list, which honestly does exactly what it says on the tin: it sends an NVMe Identify List Namespaces command, gives you the result back, and hands you the returned structure. iconic behaviour, no notes π
πΈ NAME πΈ
nvme-id-ns-list β send the NVMe Identify List Namespaces command, get the result and the structure back π¦
β¨ SYNOPSIS β¨
nvme [<global-options>] id ns-list <device> [--namespace-id=<nsid> | -n <nsid>]
[--csi=<command_set_identifier> | -y
<command_set_identifier>]
[--all | -a]
like, that's the whole vibe. <device> is required, bestie, don't forget it π
π DESCRIPTION π
So for the NVMe device you hand it, this thing sends an identify command for the namespace list and gives you back the result and the returned structure. literally both. we love a two-for-one π
The <device> parameter is mandatory β like, non-negotiable. And it can be either:
- the NVMe character device (ex:
/dev/nvme0), or - a namespace block device (ex:
/dev/nvme0n1)
The starting namespace in the list always begins with 0 unless you pass the --namespace-id option to override it. so if you want to start somewhere else, that's your girl π«Ά
On success, the namespace array gets printed for each index and nsid β but only for a valid nsid. slay π
π OPTIONS π
-n <nsid>,--namespace-id=<nsid>β retrieve the identify list structure starting with the given nsid. You can also pass the broadcast value0xffffffffasallor-1. yes, all three work, pick your fighter β-y <command_set_identifier>,--csi=<command_set_identifier>β if you give this value, it retrieves the identify list structure associated with the specified I/O command set. iykyk π₯-a,--allβ retrieve the identify list structure for all namespaces in the subsystem, whether they're attached or inactive. the whole squad, assembled π
π GLOBAL OPTIONS π
these ones live at the top-level nvme command and are available to this subcommand too β shared custody, we love to see it π«Ά
--dry-runβ print the command that would be executed, but don't actually execute it. it's giving "look but don't touch" π--no-ioctl-probingβ disable probing for 64-bit IOCTL support.--no-retriesβ disable retry logic on transient errors. no second chances, periodt π-o <fmt>,--output-format=<fmt>β set the reporting format tonormal,tabular,json, orbinary. Only one output format may be used at a time β so don't be greedy, bestie.--output-format-version=<version>β select the output format version. Version1uses the original field naming, while version2(the default) provides more consistent and script-friendly field names. Other versions are rejected β nope, not happening π«--quietβ suppress informational messages. Errors are still reported, and--quietcancels any--verbosefor the library log level. it's the "shhh" of flags π€«--set-options=<key=value>[,<key=value>...]β set libnvme library options for this invocation. The supported keys areforce-4k,mi-probe-enabled,test-base-dirandtest-sysfs-dir. key=value girlies rise πΈ--timeout=<ms>β set the timeout for the command in milliseconds.infiniteor-1waits without a time limit (0xffffffff). patient queen behaviour β³-v,--verboseβ increase the level of detail in the output. May be specified multiple times to further increase verbosity. stack it like a charm bracelet β¨
π‘ these options can also be set as machine-wide defaults in nvme-cli.conf(5). A command-line flag always overrides the file. no cap.
π¦ EXAMPLES π¦
- print the namespaces present for the zoned command set in JSON format:
# nvme id ns-list /dev/nvme0 -y 2 -a -o json
- print the namespaces present for the NVM Command Set in normal format:
# nvme id ns-list /dev/nvme0
literally just copy-paste these and go, bestie π
π§ NVME π§
this little icon is part of the nvme-user suite π
that's the whole page, bestie! π this gem is from the NVMe Manual β section NVME-ID-NS-LIST(1), dated 10/30/2026, and it says NVMe at the bottom, which... yeah. now go list some namespaces, you absolute main character ππ
π¦ where this page comes from
- arch rolling: nvme-cli 3.2-1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms