NVME-LOG-SMART(1)

πŸ“¦ version 3.2, in arch rolling

πŸ’… NVME-LOG-SMART(1) β€” like, the nvme-log-smart page, bestie

okay so this is nvme-log-smart from the NVMe Manual, and it's literally the page that tells you how to ask your NVMe drive for its SMART log. strap in πŸ’–


✨ NAME ✨

nvme-log-smart β€” sends the NVMe SMART log page request, then hands you back the result and the log. that's the whole vibe πŸŽ€


🌸 SYNOPSIS 🌸

nvme [<global-options>] log smart <device>
                        [--namespace-id=<nsid> | -n <nsid>]
                        [--raw-binary | -b]

πŸ¦‹ DESCRIPTION πŸ¦‹

So basically: this grabs the NVMe SMART log page off your NVMe device and gives you the returned structure. iconic behavior honestly πŸ‘‘

The <device> parameter is mandatory β€” not optional, not "eh maybe later", you have to give it one. and it can be either:

  • the NVMe character device (ex: /dev/nvme0), or
  • a namespace block device (ex: /dev/nvme0n1)

On success, the returned smart log structure can come back in one of several ways depending on which option flags you used, fr fr:

  • the structure may be parsed by the program and printed in a readable format, or
  • the raw buffer may be printed to stdout so another program can parse it

your call, main character 😌


πŸ’… OPTIONS πŸ’…

  • -n <nsid>, --namespace-id=<nsid> β€” Retrieve the SMART log for the given nsid. This is optional, and whether it actually works may depend on the device's capabilities to provide this log on a per-namespace basis (peep the NVMe Identify Controller for that capability πŸ‘€). The default nsid to use is 0xffffffff for the device global SMART log. The broadcast value 0xffffffff can also be given as all or -1.
  • -b, --raw-binary β€” Print the raw SMART log buffer to stdout. no parsing, no pretty printing, just vibes and bytes ✨

🌈 GLOBAL OPTIONS 🌈

these are defined at the top-level nvme command, and yes bestie they're available to this subcommand too 🫢

  • --dry-run β€” Print the command that would be executed, but don't actually execute it. window shopping for syscalls πŸ’€
  • --no-ioctl-probing β€” Disable probing for 64-bit IOCTL support.
  • --no-retries β€” Disable retry logic on transient errors. one shot, no take-backs πŸ™ˆ
  • -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. pick one, we're not doing all four 😭
  • --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. so v2 is the moment unless you have a reason 🌟
  • --quiet β€” Suppress informational messages. Errors are still reported, and --quiet cancels any --verbose for the library log level. the way it overrides --verbose... noted πŸ“
  • --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). forever and ever and ever πŸ•°οΈ
  • -v, --verbose β€” Increase the level of detail in the output. May be specified multiple times to further increase verbosity. stack 'em, go off πŸ’¬
These options can also be set as machine-wide defaults in nvme-cli.conf(5). A command-line flag always overrides the file. command line stays the boss πŸ‘‘

πŸ“ EXAMPLES πŸ“

  • Print the SMART log page in a human readable format:
# nvme log smart /dev/nvme0
  • Print the raw SMART log to a file:
# nvme log smart /dev/nvme0 --raw-binary > smart_log.raw
It is probably a bad idea to not redirect stdout when using this mode. like... please redirect it bestie, your terminal did not consent to raw buffer spray 😭

🧚 NVME 🧚

Part of the nvme-user suite. yes, we're fancy πŸ’œ


✨ and that's the whole page!! go forth and interrogate your drive ✨

NVMe β€” dated 10/30/2026 β€” NVME-LOG-SMART(1) β€” mwah, bye bestie πŸ’–πŸ¦‹βœ¨
πŸ“¦ where this page comes from