nvme-wdc-cap-diag1
Retrieve wdc device's diagnostic log and save to file.
Usage
nvme [<global-options>]
wdc
cap-diag
<device>
[--output-file=<FILE>,
-O
<FILE>]
[--transfer-size=<SIZE>,
-s
<SIZE>]
Overview
For the NVMe device given, sends the WDC Vendor Unique Capture-Diagnostics request and saves the result to a file.
The <device> parameter is mandatory NVMe character device (ex: /dev/nvme0).
This will only work on WDC devices supporting this feature. Results for any other device are undefined.
Options
-
-O <FILE>, --output-file=<FILE> -
Output file; defaults to device serial number followed by "cap_diag" suffix
-
-s <SIZE>, --transfer-size=<SIZE> -
Transfer size; defaults to 0x10000 (65536 decimal) bytes
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.
-
--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 to normal, tabular, 'json, or binary. 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 --quiet cancels any --verbose for the library log level.
-
--set-options=<key=value>[,<key=value>...] -
Set libnvme library options for this invocation. Supported keys are force-4k, mi-probe-enabled, test-base-dir and test-sysfs-dir.
-
--timeout=<ms> -
Set the timeout for the command in milliseconds. infinite or -1 waits 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
• Gets the capture diagnostics log from the device and saves to default file in current directory (e.g. STM00019F3F9cap_diag.bin):
# nvme wdc cap-diag /dev/nvme0
• Gets the capture diagnostics log from the device and saves to defined file in current directory (e.g. testSTM00019F3F9cap_diag.bin):
# nvme wdc cap-diag /dev/nvme0 -O test
• Gets the capture diagnostics log from the device and saves to defined file with pathname (e.g. /tmp/testSTM00019F3F9cap_diag.bin):
# nvme wdc cap-diag /dev/nvme0 -O /tmp/test
• Gets the capture diagnostics log from the device transferring the data in 64k chunks and saves to default file in current directory (e.g. STM00019F3F9internal_fw_log.bin):
# nvme wdc cap-diag /dev/nvme0 -s 0x10000
• Gets the capture diagnostics log from the device transferring the data in 16k chunks and saves to default file in current directory (e.g. STM00019F3F9internal_fw_log.bin):
# nvme wdc cap-diag /dev/nvme0 -s 16384
Nvme
Part of the nvme-user suite.
Releases
5 releases since Debian 10 (Buster); the text changed 4 times.
--dry-run since Arch Linux 2026-11-01;
--no-ioctl-probing since Arch Linux 2026-11-01;
--no-retries since Arch Linux 2026-11-01;
--output-format since Arch Linux 2026-11-01;
--output-format-version since Arch Linux 2026-11-01;
--quiet since Arch Linux 2026-11-01;
--set-options since Arch Linux 2026-11-01;
--timeout since Arch Linux 2026-11-01;
--verbose since Arch Linux 2026-11-01;
-O since Arch Linux 2026-11-01;
-v since Arch Linux 2026-11-01.