NVME-INTEL-SMART-(1)

πŸ’– NVME-INTEL-SMART-(1) β€” the nvme intel smart-log-add glow-up πŸ’–

okay bestie, so this is a page from the NVMe Manual (yes, the NVME-INTEL-SMART-(1) one, we're fancy) and it's all about pulling the Intel Additional SMART log page off your drive. let's get into it ✨


✨ NAME ✨

nvme-intel-smart-log-add β€” sends the NVMe Intel Additional SMART log page request, then hands you back the result and the log. it's giving "ask and you shall receive" 🫢


πŸ¦‹ SYNOPSIS πŸ¦‹

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

look at that little command, so iconic, so compact πŸ’…


🌸 DESCRIPTION 🌸

so what does it do. it retrieves the NVMe Intel Additional SMART log page from your device and gives you the returned structure. that's the whole vibe. πŸ”₯

the <device> parameter is mandatory β€” like, non-negotiable, you literally cannot skip it. and it can be either:

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

on success, the returned smart log structure may come back in one of several ways depending on which option flags you picked: the structure may be parsed by the program and printed in a readable format, or the raw buffer may be printed to stdout for another program to parse. your call, main character πŸŽ€


πŸŽ€ OPTIONS πŸŽ€

  • -n <nsid>, --namespace-id=<nsid> β€” retrieve the Additional SMART log for the given nsid. this is optional, and ngl its success may depend on the device's capabilities to provide this log on a per-namespace basis (peep the NVMe Identify Controller for this capability, iykyk). 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 Intel Additional SMART log buffer to stdout. no parsing, no edit, just vibes and bytes πŸ’€
  • -j, --json β€” dump output in json format. for the script girlies ⭐

πŸ‘‘ GLOBAL OPTIONS πŸ‘‘

the following options are defined at the top-level nvme command and are available to this subcommand. so like, they're not this command's options, they're the parent's, but they still show up to the party πŸŽ‰

  • --dry-run β€” print the command that would be executed, but do not actually execute it. manifesting the command without committing 😌
  • --no-ioctl-probing β€” disable probing for 64-bit IOCTL support. periodt, no probing.
  • --no-retries β€” disable retry logic on transient errors. one shot, one opportunity 🫑
  • -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 a lane, bestie πŸ’…
  • --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. we don't do off-brand versions here πŸ™ˆ
  • --quiet β€” suppress informational messages. errors are still reported, and --quiet cancels any --verbose for the library log level. shhhh 🀫
  • --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. custom settings, custom girl πŸ’œ
  • --timeout=<ms> β€” set the timeout for the command in milliseconds. infinite or -1 waits without a time limit (0xffffffff). no cap, it'll wait forever ⏳
  • -v, --verbose β€” increase the level of detail in the output. may be specified multiple times to further increase verbosity. the more the merrier, stack it up πŸ”₯

these options can also be set as machine-wide defaults in nvme-cli.conf(5). a command-line flag always overrides the file β€” CLI stays winning, always πŸ‘‘


🌈 EXAMPLES 🌈

  • print the Intel Additional SMART log page in a human readable format:
# nvme intel smart-log-add /dev/nvme0
  • print the raw Intel Additional SMART log to a file:
# nvme intel smart-log-add /dev/nvme0 --raw-binary > smart_log.raw
⚠️ it is probably a bad idea to not redirect stdout when using this mode. like, don't do it. the raw buffer will just spill everywhere and you'll be sad 😭

πŸ’€ NVME πŸ’€

part of the nvme-user suite. one of us, one of us 🧚


okay that's the whole page, and yes the manual is NVMe, dated 10/30/2026, page NVME-INTEL-SMART-(1) β€” mwah, thanks for reading bestie, go check your SMART log πŸ’–βœ¨πŸ“

πŸ“¦ where this page comes from