NVME-NVM-ID-CTRL(1)
πΈ NVME-NVM-ID-CTRL(1) β like, the nvme manual, but make it make sense π
okay bestie, buckle up β¨ this is a page from the NVMe Manual, and the command we're talking about is nvme-nvm-id-ctrl. yes the name is a mouthful, no I did not choose it. let's go π
β¨ NAME β¨
nvme-nvm-id-ctrl β send the NVMe Identify Controller and get the NVM command set structure back. also, and I cannot stress this enough: deprecated π
π¦ SYNOPSIS π¦
nvme [<global-options>] nvm-id-ctrl <device>
π DESCRIPTION π
so here's the tea π: nvme-nvm-id-ctrl is a deprecated alias for nvme-id-nvm-ctrl(1). it got kept around purely for scripts that were written against nvme-cli versions older than 3.0. the options and behavior are literally identical β the only thing being preserved here is the top-level command name. that's it. that's the whole job. π«Ά
new scripts should use nvme id nvm-ctrl instead, no cap. this alias prints a deprecation warning on stderr, and it may be removed in a future release π so don't get too attached.
for the full option reference, go read nvme-id-nvm-ctrl(1). it's all there, I promise π
π GLOBAL OPTIONS π
these options are defined at the top-level nvme command and, good news, they're available to this subcommand too β¨
--dry-runβ prints the command it would have run, but doesn't actually run it. like window shopping for syscalls π--no-ioctl-probingβ disables probing for 64-bit IOCTL support. no probing. we're respecting the boundary.--no-retriesβ turns off retry logic on transient errors. one shot, one opportunity π―-o <fmt>,--output-format=<fmt>β sets the reporting format tonormal,tabular,'json, orbinary. only one output format at a time, bestie, we don't do combos π--output-format-version=<version>β picks the output format version. version1uses the original field naming, while version2(the default) gives you more consistent and script-friendly field names. any other version gets rejected π--quietβ suppresses informational messages. errors still get reported. also,--quietcancels out any--verbosefor the library log level. they simply cannot coexist π€--set-options=<key=value>[,<key=value>...]β sets libnvme library options for this invocation only. supported keys areforce-4k,mi-probe-enabled,test-base-dirandtest-sysfs-dirπ--timeout=<ms>β sets the timeout for the command in milliseconds. useinfiniteor-1to wait with no time limit at all (0xffffffff). time is a construct β³-v,--verboseβ increases the level of detail in the output. you can stack it multiple times to get even more verbose. go off, specify it twice, I'm not your mom πΈ
heads up: these options can also be set as machine-wide defaults in nvme-cli.conf(5). a command-line flag always overrides the file. file says one thing, flag says another, flag wins, periodt π
π§ EXAMPLES π§
No Examples
(yeah I know. devastating. not a single one. we're all just out here raw-dogging the synopsis π)
π NVME π
part of the nvme-user suite π iconic lineage, honestly.
β SEE ALSO β
nvme-id-nvm-ctrl(1)β the actual main character. go there. π¦
and that's the page! this was the NVMe manual, dated 10/30/2026 β screenshot it, frame it, put it on your fridge ππ slay, and remember: deprecated doesn't mean unloved, it just means please migrate your scripts πβ¨
π¦ 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