GO9PIMG 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #!/bin/bash
  2. set -e
  3. trap : 2
  4. $HARVEY/util/ufs -root=$HARVEY &
  5. ufspid=$!
  6. export machineflag=q35
  7. if [ "$(uname)" = "Linux" ] && [ -e /dev/kvm ]; then
  8. export kvmflag='-enable-kvm'
  9. export machineflag='pc,accel=kvm'
  10. if [ ! -w /dev/kvm ]; then
  11. # we don't have access as a regular user
  12. export kvmdo=sudo
  13. fi
  14. fi
  15. # The -usb flag is necessary for the system to recognize usb devices
  16. # To specify a specific device you must follow the following format:
  17. # -device usb-host,hostbus='X',hostaddr='Y'
  18. # The 'X'/'Y' values can be found with lsusb(8) (Linux/BSD)
  19. # Provided is an example lsusb(8) output:
  20. # Bus 002 Device 004: ID 056a:00e6 Wacom Co., Ltd TPCE6
  21. # Where 'X'== 2 and 'Y'== 4
  22. read -r cmd <<EOF
  23. $kvmdo qemu-system-x86_64 -s -cpu Opteron_G1 -smp 2 -m 2048 $kvmflag \
  24. -usb \
  25. -serial stdio \
  26. --machine $machineflag \
  27. -net nic,model=rtl8139 \
  28. -net user,id=user.0,\
  29. hostfwd=tcp::5555-:1522,\
  30. hostfwd=tcp::9999-:9,\
  31. hostfwd=tcp::17010-:17010,\
  32. hostfwd=tcp::1666-:1666,\
  33. hostfwd=tcp::5356-:5356,\
  34. hostfwd=tcp::17013-:17013 \
  35. -object filter-dump,id=f1,netdev=user.0,file=/tmp/vm0.pcap \
  36. -drive id=disk,file=$HARVEY/util/harvey.qcow2,if=none \
  37. -device ich9-ahci,id=ahci \
  38. -device ide-drive,drive=disk,bus=ahci.0 \
  39. $*
  40. EOF
  41. echo $cmd
  42. eval $cmd
  43. kill $ufspid
  44. wait