这是命令 nvme-id-ns 可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
nvme-id-ns - 发送 NVMe 标识命名空间,返回结果和结构
概要
nvme id-ns [-v | --vendor-specific] [-b | --原始二进制]
[--namespace-id= | -n ]
商品描述
对于给定的 NVMe 设备,发送一个识别命名空间命令并提供结果和
返回的结构。
这参数是强制性的,可以是 NVMe 字符设备(例如:
/dev/nvme0) 或命名空间块设备(例如:/dev/nvme0n1)。 如果字符设备是
给定,'--namespace-id' 选项是强制性的,否则它将使用
您打开的块设备的命名空间。 对于块设备,使用的 ns-id 可以是
用相同的选项覆盖。
成功时,结构可能会以多种方式之一返回,具体取决于选项
旗帜; 该结构可以由程序解析,或者原始缓冲区可以打印到
标准输出。
配置
-n , --namespace-id=
检索给定 nsid 的标识命名空间结构。 这是必需的
字符设备,或者覆盖块 nsid 如果给定。
-b,--原始二进制
将原始缓冲区打印到标准输出。 程序不解析结构。 这将覆盖
供应商特定的和人类可读的选项。
-v, --特定于供应商
除了解析已知字段外,此选项还将转储供应商特定区域
具有 ASCII 解释的十六进制结构。
-H,--人类可读的
此选项会将许多位字段解析并格式化为人类可读的格式。
示例
· 让程序解释返回的缓冲区并在人类中显示已知字段
可读格式:
# nvme id-ns /dev/nvme0n1
· 如果使用字符设备或覆盖命名空间 ID:
# nvme id-ns /dev/nvme0 -n 1
# nvme id-ns /dev/nvme0n1 -n 1
# nvme id-ns /dev/nvme0 --namespace-id=1
· 除了显示已知字段外,还有显示供应商唯一的程序
领域:
# nvme id-ns /dev/nvme0n1 --供应商特定
# nvme id-ns /dev/nvme0n1 -v
以上将以十六进制转储“vs”缓冲区,因为它不知道如何解释它。
· 让程序以二进制形式返回原始结构:
# nvme id-ns /dev/nvme0n1 --raw-binary > id_ns.raw
# nvme id-ns /dev/nvme0n1 -b > id_ns.raw
使用此模式时不重定向 stdout 可能是一个坏主意。
· 或者,您可能希望将数据发送到另一个可以解析原始数据的程序
缓冲。
# nvme id-ns /dev/nvme0n1 --raw-binary | nvme_parse_id_ns
上面例子中的解析程序可以是一个显示结构的程序
你喜欢的方式。 下面的程序就是这样一个例子,它将解析它并且可以
通过管道“|”接受输出,如上例所示,或者您可以“cat”
一个保存的输出缓冲区。
/* 文件:nvme_parse_id_ns.c */
#包括
#包括
#包括
int main(int argc,char ** argv)
{
无符号字符 buf[sizeof(struct nvme_id_ns)];
结构 nvme_id_ns *ns = (结构 nvme_id_ns *)buf;
如果(读取(STDIN_FILENO,buf,sizeof(buf)))
1返回;
printf("nsze : %#llx\n", ns->nsze);
printf("ncap : %#llx\n", ns->ncap);
0返回;
}
NVME
nvme-user 套件的一部分
使用 onworks.net 服务在线使用 nvme-id-ns