ubuntu 无法运行dpdk-devbind --status,未找到命令

9nvpjoqh  于 2023-03-01  发布在  其他
关注(0)|答案(1)|浏览(194)

我正在尝试在Ubuntu 22.04上安装DPDK。
如果运行dpdk-devbind --status,则得到command not found
对于安装,我运行了以下命令:

git clone https://github.com/DPDK/dpdk.git
meson setup build
cd build
ninja
ninja install

它没有安装到/usr/local/lib64,我能看到的唯一位置是/usr/local/lib/x86_64-linux-gnu/dpdk/usr/local/lib/x86_64-linux-gnu中的大量DPDK二进制文件。
我在运行dpdk-devbind --status时遗漏了什么?

wfypjpf4

wfypjpf41#

我认为DPDK文档(又一次)有缺陷,没有提到它是一个python脚本dpdk-devbind.py,它来自usertools子目录,对我来说,它是使用默认选项安装在/usr/local/bin/中的。
它应该具有可执行权限,因此您可以这样调用它:

  • dpdk-devbind.py --status以查看每个适配器当前使用的驱动程序以及未使用的驱动程序,例如vfio-pci或uio_pci_generic
  • sudo dpdk-devbind.py --unbind 00:03.0以取消适配器与任何驱动程序的绑定
  • sudo modprobe uio_pci_generic && sudo dpdk-devbind.py --bind uio_pci_generic 00:03.0以加载uio_pci_generic驱动程序(如果已经加载,则显然不需要)并将指定的适配器绑定到该驱动程序
  • 此时dpdk-devbind.py --status将在DPDK兼容驱动程序列表下列出00:03.0

你可能需要使用vfio_pci而不是uio_pci_generic作为驱动程序,这取决于你的硬件,在一个有英特尔卡的裸机上,我使用vfio-pci,但是在Ubuntu VM中,我不得不添加第二个网络适配器(作为桥接适配器),我也允许它在VirtualBox GUI设置中进入混杂模式,为此我不得不使用uio_pci_generic

相关问题