NVME-CHECK-TLS-KE(1)
π NAME π
nvme-check-tls-key β bestie, this one checks a NVMe TLS PSK, but likeβ¦ it's deprecated π
(this lives in the NVMe Manual, section 1, and yeah we're gonna get into all of it)
β¨ SYNOPSIS β¨
nvme [<global-options>] check-tls-key [--keyring=<name> | -k <name>]
[--keytype=<type> | -t <type>]
[--hostnqn=<nqn> | -n <nqn>]
[--subsysnqn=<nqn> | -c <nqn>]
[--keydata=<key> | -d <key>]
[--identity=<id-vers> | -I <id-vers>]
[--compat | -C]
π DESCRIPTION π
Okay so nvme-check-tls-key is a deprecated alias for nvme-keys-check-tls-psk(1) β it's still here for the scripts that were written against nvme-cli versions older than 3.0 π«Ά. But it is not a carbon copy of 2.x, there are two whole differences:
--insert/-iand--keyfile/-fare gone, periodt. Back in 2.x those were the ones that derived a TLS PSK and stored it in the keyring; the newcheck-tls-psknever modifies the keyring β that whole job moved over tonvme-keys-insert-tls-psk(1)π¦.- The identity is no longer the first line of stdout. 2.x printed it all alone and it was cute and simple π; the alias prints
Configured PSK is valid (HMAC <id>, length <len>)first and reports the keyring state after it β so a script that grabs the identity withhead -1is literally reading the wrong line π. And searching the keyring is itself new, plus a keyring that does not exist gets reported as a failure: the command exits1where 2.x exited0. yeah. that's a whole thing.
New scripts should use nvme keys check-tls-psk instead, bestie. This alias prints a deprecation warning on stderr and may be removed in a future release, so don't get attached π.
For the full option reference, go see nvme-keys-check-tls-psk(1) β she has the whole menu π
π GLOBAL OPTIONS π
These ones are defined up at the top-level nvme command and they're available to this subcommand too:
--dry-runβ prints the command that would be executed, but does not actually execute it. all vibes, no action β¨--no-ioctl-probingβ disables probing for 64-bit IOCTL support.--no-retriesβ disables retry logic on transient errors. no second chances, we move π-o <fmt>,--output-format=<fmt>β sets the reporting format tonormal,tabular,'json, orbinary. Only one output format may be used at a time, so pick your fave and commit π--output-format-version=<version>β selects the output format version. Version1uses the original field naming, while version2(the default) gives you more consistent and script-friendly field names. Other versions are rejected β no cap π«--quietβ suppresses informational messages. Errors are still reported, and--quietcancels any--verbosefor the library log level. shhhh π€«--set-options=<key=value>[,<key=value>...]β sets libnvme library options for this invocation. The supported keys areforce-4k,mi-probe-enabled,test-base-dirandtest-sysfs-dirπ₯--timeout=<ms>β sets the timeout for the command in milliseconds.infiniteor-1waits without a time limit (0xffffffff) β³-v,--verboseβ increases the level of detail in the output. May be specified multiple times to further increase verbosity. she's chatty and we love her π£οΈ
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 the main character π
π EXAMPLES π
No Examples
likeβ¦ none. zero. not a single one π iconic behaviour honestly
π§ NVME π§
Part of the nvme-user suite π«Ά
π SEE ALSO π
nvme-keys-check-tls-psk(1), nvme-keys-insert-tls-psk(1)
β¨ okay that's the whole page bestie, mwah π β¨
signing off from the NVMe manual, dated 10/30/2026 β go use the non-deprecated one, ily ππ¦π
π¦ 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