在使用DPDK为移动边缘计算配置NES环境的过程中,系统正在生成错误消息,如下所示:
Qemu-System-X86_64:-Chardev Socket,Id = Char1,Path = / Usr / Bin / Usvhost-1: 无法连接套接字:没有这样的文件或目录
注意:我使用的是CentOS 7。
使用的命令列表如下:
mkdir -p /mnt/huge-1048576kB
mount -t hugetlbfs nodev /mnt/huge-1048576kB
./scripts/setup.sh
nginx
redis-server /etc/redis/redis.conf &
tunctl -t tap0
brctl addif virbr0 tap0
ifconfig eno1 0 up
ip addr add 10.138.77.17/24 dev virbr0
export RTE_SDK=/opt/dpdk-stable-16.07.2
export RTE_TARGET=x86_64-native-linuxapp-gcc
make
export NES_SERVER_CONF=/opt/intel/nev_sdk/nes_root/scripts/nes.cfg
cd scripts/
./nes-daemon-start
0000:1c:00.1 already bound to driver igb_uio, skipping
0000:1c:00.0 already bound to driver igb_uio, skipping
/usr/local/bin/qemu-system-x86_64 -enable-kvm -cpu host -m 4096 -no-reboot -no-hpet -drive file=/home/tcs/ubuntu-14.04.5-desktop-amd64.iso,if=virtio,id=drive-virtio-disk1,format=raw -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge-1048576kB/,share=on -numa node,memdev=mem -mem-prealloc -device virtio-net-pci,netdev=net0,mac=ac:1f:6b:09:cb:9a -netdev type=tap,id=net0 -chardev socket,id=char1,path=/usr/bin/usvhost-1 -netdev type=vhost-user,id=mynet1,chardev=char1 -device virtio-net-pci,mac=52:54:00:00:00:01,netdev=mynet1,id=net1,csum=off,gso=off,guest_csum=off,guest_tso4=off,guest_tso6=off,guest_ecn=off
Qemu-System-X86_64: -Chardev Socket,Id=Char1,Path=/Usr/Bin/Usvhost-1: Failed To Connect Socket: No Such File Or Directory
答案 0 :(得分:0)
我不熟悉NES,但是从列出的命令看起来./nes-daemon-start
之后/Usr/Bin/Usvhost-1
中应该有一个Unix套接字。
由于QEMU无法连接到套接字/Usr/Bin/Usvhost-1
,显然nes-daemon-start
会在另一个地方创建套接字。
解决方案是检查路径/Usr/Bin/Usvhost-1
是否正确。在大多数Unix文件系统中,字母大小写有区别,即/Usr
和/usr
是不同的路径。也许这就是QEMU无法找到提供的路径的情况。