NVME-SED-DISCOVER(1)

✨ nvme-sed-discover πŸ’… <small>(okay so this one lives in the NVMe Manual, hi bestie πŸŽ€)</small>


🌸 NAME 🌸

nvme-sed-discover β€” the little guy that goes and Discovers SED Opal Locking Features πŸ”πŸ” no cap, that's literally its whole job.


πŸ¦‹ SYNOPSIS πŸ¦‹

nvme [<global-options>] sed discover [--udev | -u] <device>

πŸ’– DESCRIPTION πŸ’–

So what it does is: it queries the NVMe device you hand it, and asks it politely (or not so politely, we don't judge) to spill its SED Opal capabilities. That's it. That's the function. It's giving "just asking questions" energy and honestly? Iconic. πŸ‘‘


πŸ’… OPTIONS πŸ’…

  • -u, --udev β€” prints the locking info in a form that's suitable for udev rules. like, formatted for udev specifically. that's the vibe. πŸŽ€

πŸ‘‘ GLOBAL OPTIONS πŸ‘‘

Okay so these ones are defined up at the top-level nvme command β€” they're not this subcommand's own thing, but they're available to it anyway. nepotism but make it useful πŸ’œ

  • --dry-run β€” prints the command that would be executed, but does not actually execute it. all the preview, none of the commitment. πŸ™ˆ
  • --no-ioctl-probing β€” disables probing for 64-bit IOCTL support. πŸ¦‹
  • --no-retries β€” disables retry logic on transient errors. one shot, one opportunity, no do-overs πŸ’€
  • -o <fmt>, --output-format=<fmt> β€” sets the reporting format to normal, tabular, 'json, or binary. (yes the apostrophe before json is really there, i transcribed it EXACTLY, don't come for me 😭) Only one output format may be used at a time β€” pick a lane bestie 🌈
  • --output-format-version=<version> β€” selects the output format version. Version 1 uses the original field naming, while version 2 (the default) provides more consistent and script-friendly field names. Any other versions get rejected 🚫 β€” do not test her, she will say no.
  • --quiet β€” suppresses informational messages. Errors are still reported, and --quiet cancels any --verbose for the library log level. it's giving "i'm not mad i'm just quiet" 🀫
  • --set-options=<key=value>[,<key=value>...] β€” sets libnvme library options for this invocation. The supported keys are force-4k, mi-probe-enabled, test-base-dir and test-sysfs-dir. πŸ“
  • --timeout=<ms> β€” sets the timeout for the command in milliseconds. infinite or -1 waits with no time limit at all (0xffffffff). she will wait forever, literally β³πŸ’–
  • -v, --verbose β€” increases the level of detail in the output. May be specified multiple times to further increase verbosity. the more you say it, the more it says πŸ—£οΈβœ¨
Also!! these options can be set as machine-wide defaults in nvme-cli.conf(5). But a command-line flag always overrides the file β€” CLI stays the main character, periodt πŸ‘‘πŸ’…

🌈 EXAMPLES 🌈

Run it like this:

nvme sed discover /dev/nvme5n1

and the output is doing this whole thing:

Locking Features: Locking Supported : yes Locking Feature Enabled : yes Locked : no Media Encryption : yes MBR Enabled : no MBR Done : no

look at her go πŸ₯ΉπŸ”₯


🧚 NVME 🧚

Part of nvme-cli 🫢


β€” cute lil sign-off πŸŽ€ β€” this page came from source/version NVMe, dated 10/30/2026, and it's page NVME-SED-DISCOVER(1) if you need to cite her in your footnotes. mwah πŸ’‹βœ¨

πŸ“¦ where this page comes from