diff options
Diffstat (limited to 'src/qemu.sh')
-rwxr-xr-x | src/qemu.sh | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/qemu.sh b/src/qemu.sh index b095eb8..3b8cdec 100755 --- a/src/qemu.sh +++ b/src/qemu.sh | |||
@@ -12,6 +12,8 @@ layered=${samizdat_iso_dir}/${iso%.iso}.layered.iso | |||
12 | 12 | ||
13 | initrd.sh || { echo "initrd.sh failed" >&2; exit 1; }; | 13 | initrd.sh || { echo "initrd.sh failed" >&2; exit 1; }; |
14 | 14 | ||
15 | [ "$NO_NET" ] || USE_NET=y | ||
16 | |||
15 | NET='tap,vlan=0,ifname=tap0,script=no,downscript=no' | 17 | NET='tap,vlan=0,ifname=tap0,script=no,downscript=no' |
16 | 18 | ||
17 | [ "$SLOW_BOOT" ] || QEMU_LOADS_LINUX=y | 19 | [ "$SLOW_BOOT" ] || QEMU_LOADS_LINUX=y |
@@ -21,9 +23,13 @@ NET='tap,vlan=0,ifname=tap0,script=no,downscript=no' | |||
21 | 23 | ||
22 | initrd=${samizdat_isolinux_dir}/linux/initrd.img | 24 | initrd=${samizdat_isolinux_dir}/linux/initrd.img |
23 | kernel=${samizdat_isolinux_dir}/linux/vmlinuz | 25 | kernel=${samizdat_isolinux_dir}/linux/vmlinuz |
24 | kcmdline_NET='boot=samizdat components quiet splash nbdroot=192.168.10.1,samizdat.btrfs nbddev=/dev/nbd0 ip=dhcp netkeys' | ||
25 | kcmdline_CDROM_NET='boot=samizdat components quiet splash nbdroot=192.168.10.1,samizdat.btrfs nbddev=/dev/nbd0 ip=dhcp' | ||
26 | kcmdline_CDROM='boot=samizdat components quiet splash' | 26 | kcmdline_CDROM='boot=samizdat components quiet splash' |
27 | kcmdline_CDROM_NET="${kcmdline_CDROM} nbdroot=192.168.10.1,samizdat.btrfs nbddev=/dev/nbd0 ip=dhcp" | ||
28 | kcmdline_NET="${kcmdline_CDROM_NET} netkeys" | ||
29 | |||
30 | MAC='52-54-00-12-34-56' | ||
31 | |||
32 | kcmdline_BOOTIF="BOOTIF=01-$MAC" | ||
27 | 33 | ||
28 | set -- | 34 | set -- |
29 | if [ "$USE_ISO" ]; then | 35 | if [ "$USE_ISO" ]; then |
@@ -40,7 +46,7 @@ if [ "$USE_ISO" ]; then | |||
40 | fi | 46 | fi |
41 | else | 47 | else |
42 | if [ "$QEMU_LOADS_LINUX" ]; then | 48 | if [ "$QEMU_LOADS_LINUX" ]; then |
43 | set -- "$@" -initrd "$initrd" -kernel "$kernel" -append "$kcmdline_NET" | 49 | set -- "$@" -initrd "$initrd" -kernel "$kernel" -append "$kcmdline_NET $kcmdline_BOOTIF" |
44 | else | 50 | else |
45 | set -- "$@" -boot n | 51 | set -- "$@" -boot n |
46 | fi | 52 | fi |
@@ -49,8 +55,8 @@ fi | |||
49 | set -x | 55 | set -x |
50 | sudo qemu-system-x86_64 -enable-kvm -smp 2 -m 640 -k en-us \ | 56 | sudo qemu-system-x86_64 -enable-kvm -smp 2 -m 640 -k en-us \ |
51 | -vga qxl \ | 57 | -vga qxl \ |
52 | -net nic,vlan=0,model=virtio \ | 58 | -net nic,vlan=0,model=virtio,macaddr=$MAC \ |
53 | -net "$NET" \ | 59 | ${USE_NET:+ -net "$NET"} \ |
54 | -rtc base=localtime \ | 60 | -rtc base=localtime \ |
55 | -hda "$disk" \ | 61 | -hda "$disk" \ |
56 | "$@" | 62 | "$@" |