nvme-id-ns-descs(1)
===================

NAME
----
nvme-id-ns-descs - Send NVMe Identify for a list of Namespace Identification
		Descriptor structure, return result and structure

SYNOPSIS
--------
[verse]
'nvme' [<global-options>] 'id ns-descs' <device>
			[--namespace-id=<nsid> | -n <nsid>]
			[--raw-binary | -b]

DESCRIPTION
-----------
For the NVMe device given, sends an identify for a list of namespace
identification descriptor structures command and provides the result and
returned structure.

The <device> parameter is mandatory and may be either the NVMe character
device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1).
If the character device is given, the `'--namespace-id'` option is
mandatory, otherwise it will use the ns-id of the namespace for the block
device you opened. For block devices, the ns-id used can be overridden
with the same option.

On success, the structure may be returned in one of several ways depending
on the option flags; the structure may be parsed by the program or the
raw buffer may be printed to stdout.

OPTIONS
-------
-n <nsid>::
--namespace-id=<nsid>::
	Retrieve the identify namespace identification descriptor structure
	for the given nsid. This is required for the character devices, or
	overrides the block nsid if given.

-b::
--raw-binary::
	Print the raw buffer to stdout. Structure is not parsed by
	program.

include::global-options.txt[]

EXAMPLES
--------
* If using the character device or overriding namespace #2:
+
------------
# nvme id ns-descs /dev/nvme0 -n 1
# nvme id ns-descs /dev/nvme0n1 -n 2
# nvme id ns-descs /dev/nvme0 --namespace-id=1
------------
+

* Have the program return the raw structure in binary:
+
------------
# nvme id ns-descs /dev/nvme0n1 --raw-binary > ns_descs.raw
# nvme id ns-descs /dev/nvme0n1 -b > ns_descs.raw
------------
+
It is probably a bad idea to not redirect stdout when using this mode.

NVME
----
Part of the nvme-user suite
