Skip to content

Instantly share code, notes, and snippets.

@rjleaf
Forked from smoser/gist:4756561
Last active April 25, 2016 16:14
Show Gist options
  • Save rjleaf/d70e4ed835e515307fe2bff3789c1261 to your computer and use it in GitHub Desktop.
Save rjleaf/d70e4ed835e515307fe2bff3789c1261 to your computer and use it in GitHub Desktop.
boot a cloud image in kvm on CentOS 7 (ubuntu 14.04 lts guest)
## Install a necessary packages
$ sudo yum install kvm cloud-utils genisoimage
## URL to most recent cloud image of 12.04
$ img_url="http://cloud-images.ubuntu.com/server/releases/14.04/release"
$ img_url="${img_url}/ubuntu-14.04-server-cloudimg-amd64-disk1.img"
## download the image
$ wget $img_url -O disk.img.dist
## Create a file with some user-data in it
$ cat > my-user-data <<EOF
#cloud-config
password: passw0rd
chpasswd: { expire: False }
ssh_pwauth: True
EOF
## Convert the compressed qcow file downloaded to a uncompressed qcow2
$ qemu-img convert -O qcow2 disk.img.dist disk.img.orig
## create the disk with NoCloud data on it.
$ cloud-localds my-seed.img my-user-data
## Create a delta disk to keep our .orig file pristine
$ qemu-img create -f qcow2 -b disk.img.orig disk.img
## Boot a kvm
$ kvm -net nic -net user -hda disk.img -hdb my-seed.img -m 512
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment