NVME-ID-IOCS(1)
π NAME π
okay bestie, welcome to nvme-id-iocs(1) from the NVMe Manual β this is the one where you Send NVMe Identify I/O Command Set, return result and structure. That's the whole name-line vibe, no cap.
β¨ SYNOPSIS β¨
nvme [<global-options>] id iocs <device>
[--controller-id=<cntid> | -c <cntid>]
π¦ DESCRIPTION π¦
For the NVMe device you give it, this sends an identify command and returns the Identify I/O Command Set data structure. It's giving "tell me about yourself" but for your drive. π
The <device> parameter is mandatory, bestie β it's not optional, it's main character energy. It may be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1).
The bare nvme id-iocs form (without a space) still works as a deprecated alias and will be removed in a future major version. New scripts should use nvme id iocs instead. Periodt β update those scripts, okay? π«Ά
π OPTIONS π
-c <cntid>,--controller-id=<cntid>β retrieve the identify I/O Command set data structure for the givencntid. If this value is not given,cntidwill be0xffff.
π GLOBAL OPTIONS π
The following options are defined at the top-level nvme command and are available to this subcommand:
--dry-runβ print the command that would be executed, but do not actually execute it. It's giving "look, don't touch."--no-ioctl-probingβ disable probing for 64-bit IOCTL support.--no-retriesβ disable retry logic on transient errors.-o <fmt>,--output-format=<fmt>β set the reporting format tonormal,tabular,'json, orbinary. Only one output format may be used at a time.--output-format-version=<version>β select the output format version. Version 1 uses the original field naming, while version 2 (default) provides more consistent and script-friendly field names. Other versions are rejected.--quietβ suppress informational messages. Errors are still reported, and--quietcancels any--verbosefor the library log level.--set-options=<key=value>[,<key=value>...]β set libnvme library options for this invocation. Supported keys areforce-4k,mi-probe-enabled,test-base-dirandtest-sysfs-dir.--timeout=<ms>β set the timeout for the command in milliseconds.infiniteor-1waits without a time limit (0xffffffff).-v,--verboseβ increase the level of detail in the output. May be specified multiple times to further increase verbosity.
These options can also be set as machine-wide defaults in nvme-cli.conf(5). A command-line flag always overrides the file.
β EXAMPLES β
- Have the program interpret the returned buffer and display the known fields in a human readable format:
# nvme id iocs /dev/nvme0
- show the fields in human readable format
# nvme id iocs /dev/nvme0 -v
π NVME π
Part of the nvme-user suite.
π source/version: NVMe Β· date: 10/30/2026 Β· page: NVME-ID-IOCS(1) β that's the cute sign-off, bestie, bye! π
β¨
π¦ 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