zoukankan      html  css  js  c++  java
  • How to launch QEMU from command line without libvirt with macvtap and vhost support

    How to launch QEMU from command line without libvirt with macvtap and vhost support
    This sets up a host local bridge with a macvlan interface for VM to host communication. The macvtap is setup with vhost support.

    The command line options to note are

    -netdev tap,fd=3,id=hostnet0,vhost=on,vhostfd=4 3<>$"$tapdev" 4<>/dev/vhost-net -device virtio-net-pci,netdev=hostnet0,id=net0,mac=$(< /sys/class/net/testtap/address)
    This sets up two different fd's. The first for macvtap and the second for vhost-net.

    ip link del testbr
    ip link del testvlan
    ip link del testtap

    ip link add name testbr type bridge
    ip link add link testbr name testvlan type macvlan mode bridge
    ip addr add 172.20.0.1/16 dev testvlan
    ip link set dev testvlan up
    ip link set dev testbr up
    ip link add link testbr name testtap type macvtap mode bridge
    ip link set testtap up

    tapindex=$(< /sys/class/net/testtap/ifindex)
    tapdev=/dev/tap"$tapindex"

    echo "Tap Index :=" $tapindex
    echo "Tap Dev :=" $tapdev
    echo "Mac Address :="
    cat /sys/class/net/testtap/address

    ../x86_64-softmmu/qemu-system-x86_64 -trace events=/tmp/events
    -machine pc-lite,accel=kvm,kernel_irqchip,nvdimm -cpu host -m 256,maxmem=1G,slots=2 -smp 2 -no-user-config -nodefaults -rtc base=utc,driftfix=slew -global kvm-pit.lost_tick_policy=discard
    -kernel ./vmlinux-4.9.34-63.1.container -append "reboot=k panic=1 rw tsc=reliable no_timer_check noreplace-smp root=/dev/pmem0p1
    init=/usr/lib/systemd/systemd initcall_debug rootfstype=ext4 rootflags=dax,data=ordered dhcp rcupdate.rcu_expedited=1 clocksource=kvm-clock console=hvc0 single iommu=false quiet"
    -device virtio-serial-pci,id=virtio-serial0 -chardev pty,id=charconsole0 -device virtconsole,chardev=charconsole0,id=console0 -nographic
    -object memory-backend-file,id=mem0,share,mem-path=./clear-16160-containers.img,size=235929600 -device nvdimm,memdev=mem0,id=nv0 -no-reboot
    -netdev tap,fd=3,id=hostnet0,vhost=on,vhostfd=4 3<>$"$tapdev" 4<>/dev/vhost-net -device virtio-net-pci,netdev=hostnet0,id=net0,mac=$(< /sys/class/net/testtap/address)

  • 相关阅读:
    python的多线程是否没有用了
    解决“mongoengine.fields.ImproperlyConfigured: PIL library was not found”报错
    Django JSON 时间
    伪装浏览器根据经纬度解析地理位置
    Excel——使用VLOOKUP函数关联跨工作薄数据
    Python发送邮件(支持中文)
    Excel实用技巧
    修改tomcat应用日志默认编码格式
    AWS多个EIP的解决方案
    解决荣耀7烦人的情景智能提醒
  • 原文地址:https://www.cnblogs.com/dream397/p/13962231.html
Copyright © 2011-2022 走看看