我试图在Ubuntu20.04(LinuxKernel5.4.0)中使用SPDK来运行存储应用程序。我的NVMe SSD分配如下:
$ lsblk
...
nvme0n1 259:1 0 1.5T 0 disk
├─nvme0n1p1 259:2 0 512M 0 part /boot/efi
├─nvme0n1p2 259:3 0 1G 0 part /boot
└─nvme0n1p3 259:4 0 1.5T 0 part
└─ubuntu--vg-ubuntu--lv 253:0 0 200G 0 lvm /我遵循了SPDK文档中的开始指南。在绑定SPDK驱动程序之前,应该卸载设备上的任何文件系统,这是建议。由于我的根(/)文件系统被挂载在设备中,所以在运行scripts/setup.sh之前我运行了umount /。SPDK驱动程序很可能没有正确地绑定到NVMe设备,因为像identify这样的示例应用程序没有运行。我不确定文件系统是否被正确卸载,因为在此之后我仍然使用shell (/bin/sh)。
当我尝试使用scripts/setup.sh reset返回到Linux本机内核驱动程序时,nvme设备获得了一个新的名称nvme0n2,整个文件系统仍然是只读的。我必须重新启动机器。
在这种情况下,我如何使用SPDK?
发布于 2023-01-06 22:57:05
你不能那样做。只为测试和开发获取第二个NVMe。
发布于 2023-01-06 22:45:00
从SPDK通道获得的答案是,我不能将SPDK驱动程序绑定到安装根文件系统的设备上。我要么需要一个单独的设备来包含根文件系统,要么需要使用VM来运行SPDK。

https://serverfault.com/questions/1119634
复制相似问题