# patches http://9legacy.org/9legacy/patch/pc-sdfakescsirw.diff http://9legacy.org/9legacy/patch/pc-sdvirtio.diff http://9legacy.org/9legacy/patch/pc-conf-sdvirtio.diff http://9legacy.org/9legacy/patch/pc-ethervirtio.diff http://9legacy.org/9legacy/patch/pc-conf-ethervirtio.diff http://9legacy.org/9legacy/patch/ip-ipconfig-mask.diff http://9legacy.org/9legacy/patch/dist-console.diff http://9legacy.org/9legacy/patch/dist-inst-pbslba.diff http://9legacy.org/9legacy/patch/9-tcp-mss.diff # from cd image wget http://9legacy.org/download/plan9-gce.iso.bz2 bunzip2 plan9-gce.iso.bz2 qemu-img create plan9-gce.img 10G qemu-system-i386 -machine accel=kvm -net user -net nic,model=virtio -m 2048 -vga std -drive if=none,id=hd,file=plan9-gce.img -device virtio-scsi-pci,id=scsi -device scsi-hd,drive=hd -cdrom plan9-gce.iso -boot d # from disk image wget http://9legacy.org/download/plan9-gce.img.bz2 bunzip2 plan9-gce.img.bz2 cp --sparse=always plan9-gce.img plan9-gce.img.sparse mv plan9-gce.img.sparse plan9-gce.img qemu-system-i386 -net user -net nic,model=virtio -m 2048 -vga std -drive if=none,id=hd,file=plan9-gce.img -device virtio-scsi-pci,id=scsi -device scsi-hd,drive=hd # same virtio-scsi unit number on qemu qemu-img create disk0.raw 0 qemu-img create disk.raw 100G qemu-system-x86_64 -machine accel=kvm -net user -net nic,model=virtio -m 2048 -vga std -drive if=none,id=hd0,file=disk0.raw -drive if=none,id=hd,file=disk.raw -device virtio-scsi-pci,id=scsi0 -device scsi-hd,drive=hd0 -device scsi-hd,drive=hd -cdrom plan9-gce.iso -boot d qemu-system-x86_64 -machine accel=kvm -net user -net nic,model=virtio -m 2048 -vga std -drive if=none,id=hd0,file=disk0.raw -drive if=none,id=hd,file=disk.raw -device virtio-scsi-pci,id=scsi0 -device scsi-hd,drive=hd0 -device scsi-hd,drive=hd -boot c # google compute engine https://developers.google.com/compute/docs/images gcloud auth login gcloud config set project bell-labs rm -f plan9-gce.tar.gz cp plan9-gce.img disk.raw tar Szcf plan9-gce.tar.gz disk.raw gsutil cp /home/djc/qemu/plan9-gce.tar.gz gs://plan9 gcloud compute images create plan9 --source-uri gs://plan9/plan9-gce.tar.gz gcloud compute instances create plan9-1 --zone europe-west1-a --image plan9 --can-ip-forward --machine-type g1-small --tags http-server gcloud compute instances get-serial-port-output plan9-1 --zone europe-west1-a gcloud compute instances delete plan9-1 --zone europe-west1-a -q gcloud compute images delete plan9 -q gsutil rm gs://plan9/plan9-gce.tar.gz # firewall gcloud compute firewall-rules create allow-plan9 --allow tcp:564 tcp:567 tcp:17007 tcp:17010 # gce configuration in fossil.conf, remove /dev/sd00 in plan9.ini, replace sd00 by sd01 in plan9.ini, add 'console=0 b115200' # gce-specific issues See http://www.9legacy.org/9legacy/doc/gce/issues # qemu configuration Using virtio-blk, the virt disk is /dev/sdF0. Using virtio-scsi, the first disk is /dev/sd00.